我刚刚继承了一个java应用程序,需要在XP和vista上作为服务安装。我已经8年没有使用任何形式的windows了,我从来没有创建过服务,更不用说从java应用程序(我已经为应用程序准备了一个jar和一个依赖jar - log4j)。使其作为服务运行所必需的魔力是什么?我已经得到了源代码,所以代码修改(尽管最好避免)是可能的。


当前回答

使用“winsw”,它是为Glassfish v3编写的,但通常与Java程序一起工作得很好。

要求安装。net运行时。

其他回答

这很简单,因为你必须加入快捷方式

Windows 7 C:\users\所有用户\开始菜单\程序\启动(Admin)或用户主目录(%userProfile%)

Windows 10: 在“Run shell:startup”中

在它的属性->快捷方式->目标-> java.exe -jar D:\..\runJar.jar

注意:只有在您登录后才会运行


拥有管理员权限

sc create serviceName binpath= "java.exe -jar D:\..\runJar.jar"将创建windows服务

如果超时,使用cmd /c D:\JAVA7~1\jdk1.7.0_51\bin\java.exe -jar D:\ jenkins\jenkins。战争,但即使这样,你会得到超时,但在后台java.exe将启动。检入任务管理器

注意:这将在windows登录启动时运行(在登录之前,基于服务“启动类型”)

创建windows服务的详细说明

JavaService是LGPL。这是非常容易和稳定的。强烈推荐。

我不喜欢Java服务包装器的授权。我使用ActiveState Perl编写了一个完成这项工作的服务。

我想过用c#写一个服务,但是我的时间太紧了。

另一个不错的选择是FireDaemon。它被一些大公司使用,比如NASA、IBM等;他们的网站上有完整的列表。

以下是不同解决方案的比较: http://yajsw.sourceforge.net/#mozTocId284533

个人喜欢launch4j