`

应用程序打包jar后实现随系统开机启动.

 
阅读更多
我们写好的应用程序打包后,怎么让它随系统启动就运行呢?最简单最绿色的方法是把jar包拷贝到开始菜单中的“启动”文件夹下,这样系统启动后程序就可以自动运行了。一般软件中选项设置有“随系统启动”这一项,拷贝的工作肯定由代码实现了。但是jar包路径如果动态的改变了那就有点麻烦了,

下面的代码可以简单的实现程序随系统启动...
Java代码 
  1. private final static String DIR = "C:\\Documents and Settings\\All Users\\「开始」菜单\\程序\\启动\\";  
  2.   
  3. //解决路径中空格问题  
  4. private static String formatPath(String path){  
  5.       
  6.     if(path==nullreturn "";  
  7.       
  8.     return path.replaceAll(" ""\" \"");  
  9.       
  10. }  
  11. //设置是否随系统启动  
  12. public static void setRunBySys(boolean b){  
  13.     File file = new File(DIR,JarTool.getJarName());  
  14.     Runtime run = Runtime.getRuntime();  
  15.     try {  
  16.         if (b) {  
  17.             if (!file.exists()) {  
  18.                 run.exec("cmd /c copy " + formatPath(JarTool.getJarPath())+ " " + formatPath(DIR));  
  19.             }  
  20.         } else {  
  21.             if (file.exists()) {  
  22.                 run.exec("cmd /c del " + formatPath(file.getAbsolutePath()));  
  23.             }  
  24.         }  
  25.     } catch (Exception e) {  
  26.         // TODO: handle exception  
  27.     }  
  28. }  


JarTool是自己封装的专门处理Jar包相关信息的类... 

不知道为什么不能用IO流来拷贝,难道文件在运行过程中不许进行读写操作。 

其实还有巧妙的方法是在“启动”目录下创建个bat批处理文件指向jar包。 

但是程序每次启动的时候会弹出命令窗口,虽然是瞬间一闪而过,但就是看起来不爽。 

找了些资料,可以用vb脚本来处理:
 

createobject("wscript.shell").run "XXX.bat",0 

将上面的代码保存为vbs格式的文件即可,其中"XXX.bat"是启动jar的批处理,"0"表示隐藏命令行窗口。 

现在可以总结一下,先创建一个启动jar的bat文件,然后再“启动”目录下创建一个指向这个bat的vbs脚本文件,这些可以代码实现的,取消随系统启动只要删除脚本就可以了。
引用通告地址: http://tmsoft.lsxy.com/trackback.php?tbID=947&extra=40f738
分享到:
评论

相关推荐

    应用程序打包jar后实现随系统开机启动

    ### 应用程序打包成JAR后实现随系统开机启动 在软件开发过程中,有时我们需要让某些应用程序在系统启动时自动运行。对于Java开发者来说,将应用程序打包为JAR文件后,如何实现在Windows系统开机时自动启动这些JAR...

    CentOS7设置jar应用程序开机启动的方法

    总的来说,设置jar应用程序在CentOS7上开机启动,主要是通过创建启动脚本、设置环境变量和修改`rc.local`文件来实现的。这种方法简单实用,适用于许多不使用自动化部署工具的情况。希望这个指南对你有所帮助,如果你...

    java 开机自启动 完整工程

    - JSW是一个用于将Java应用程序包装为操作系统服务的工具,它提供了跨平台的服务管理功能。 2. **使用System V或Upstart服务**(针对Linux): - 在Linux环境下,可以创建System V init脚本或者使用Upstart配置来...

    jar windows 自启动包

    标题中的“jar windows 自启动包”指的是在Windows操作系统中,如何让一个Java应用程序(通常以.jar文件形式存在)能够自启动。这涉及到Windows服务的概念,Java的可执行包装技术,以及可能使用的第三方工具。 首先...

    Centos系统里运行java的jar启动脚本

    在Linux系统,特别是CentOS 7这样的服务器环境中,运行Java应用程序通常涉及到打包成JAR文件的程序。本文将深入探讨如何在CentOS 7中创建并执行Java的JAR启动脚本,以及如何配置该脚本使其能在系统开机时自动运行。 ...

    开机自启.rar-redis,docker,java开机自启脚本

    Docker是一种流行的容器化平台,它允许开发人员打包应用程序及其依赖项到轻量级容器中。在Docker中,服务开机自启涉及创建一个Docker Compose文件(例如`docker-compose.yml`),定义服务的启动配置。然后,通过`...

    springboot项目启动bat脚本

    7. **自动启动**: 脚本可以配置为系统启动时自动运行,例如通过将`startup.bat`添加到Windows的任务计划程序,实现服务的自启动功能,确保应用在系统开机时即开始提供服务。 8. **使用bat脚本的优势**: 它提供了...

    jarrun.zip

    通过使用Wrapper,开发者可以轻松地将Java的`jar`包配置为开机启动、自动恢复等特性,提升应用程序的稳定性。 下面我们将详细探讨如何使用`Windows Service Wrapper`将`jar`包转换为Windows服务,以及`jarrun`这个...

    exe4j打jar包exe工具

    exe4j是一款强大的Java应用程序打包工具,主要用于将Java的jar文件转换为Windows平台下的可执行文件(exe)。这个工具使得Java开发者能够方便地将他们的Java应用程序分发给那些可能没有安装Java运行环境(JRE)的...

    Spring Boot应用集成打包部署.docx

    Spring Boot 通过提供预设的配置和自动配置功能,使得开发者能够快速搭建应用程序,而无需大量的手动配置。它支持与多种流行的技术集成,如MyBatis、Redis 和 ActiveMQ,极大地提高了开发效率。 在集成MyBatis时,...

    SpirngBoot jar 包windows自动部署

    SpringBoot的应用程序通常被打包为一个可执行的jar文件,这个jar包含了运行应用程序所需的所有依赖,包括JVM本身。这种打包方式使得SpringBoot应用可以在任何支持Java的环境中运行,无需额外的配置或服务器环境。 ...

    window脚本.zip

    将启动脚本(如start.bat)复制到这个路径下,可以实现系统启动时自动运行该脚本,从而启动Java服务。 5. **Windows自启动机制**:Windows系统提供了多种方法来实现程序自启动,如注册表项(HKCU\Software\...

    shell脚本发布jar包服务,war包服务

    在IT行业中,shell脚本是Linux或Unix系统中用于自动化任务的强大工具,而jar和war文件则是Java应用程序的标准打包格式。这篇博客文章标题为“shell脚本发布jar包服务,war包服务”,意味着它将介绍如何使用shell脚本...

    Centos运行jar.docx

    在 CentOS 7 这样的 Linux 发行版上运行 Java 应用程序(通常被打包成 JAR 文件)是一种常见的需求。本文将详细介绍如何在 CentOS 7 上高效、稳定地启动和管理 JAR 文件,并探讨不同的启动策略及其优缺点。 #### 一...

    Java项目Windows环境一键部署.doc

    【Java项目Windows环境一键部署】是指通过特定工具和方法,将Java应用程序打包成可以在Windows操作系统上直接运行的可执行文件(exe),以便于快速、简便地在Windows服务器上部署Java项目。这一过程主要针对三种类型...

    Linux下启动JAVA

    在Linux环境下启动Java应用程序是许多开发人员和系统管理员日常任务的一部分。Java的可移植性使得它能在各种操作系统上运行,而Linux作为服务器平台的广泛使用,使得了解如何在该平台上启动Java变得至关重要。本文将...

    package.rar

    Java注册Windows服务是将Java应用程序作为Windows操作系统服务运行的一种技术,这样可以实现程序开机自动启动、后台持续运行以及通过服务管理工具进行控制。在Windows环境下,通常使用Java Service Wrapper(JSW)...

    java实现开机自动调用摄像头拍照存储

    `camera.jar`应该是包含了摄像头拍照功能的Java应用程序的打包文件。`操作说明.txt`则可能包含了详细的步骤或注意事项,如如何配置启动任务、如何解压和运行程序等。 总的来说,实现Java开机自动调用摄像头拍照存储...

    agent-linux.rar

    然后,我们需要执行以下命令来加载、启动服务并设置开机启动: ```bash sudo systemctl daemon-reload sudo systemctl start agent sudo systemctl enable agent ``` 如果需要取消开机自启动,可以使用: ```bash...

Global site tag (gtag.js) - Google Analytics