我正在使用 apache commons deamon 来制作 Windows 服务。从没有包含库的 java 类中创建一个简单的服务就可以了。但我的目的是使用包含多个 jar 库的 java 类提供服务。我尝试了两件事来做到这一点,但没有成功。做的第一件事是制作 --classpath (pathToClassFile);(pathToJarLibraries)/*jar ; 这导致了 NoClassDefFoundException 我做的第二件事是制作一个可运行的 jar(其中包括所有作为可执行文件的库)。使用 java -jar (pathToJar) 在命令提示符下运行它没问题,但将其作为服务再次导致 NoClassDefFoundException。谁能告诉我如何告诉 prunsrv 命令我有一些运行主类文件所需的 jar 库?
问问题
388 次
2 回答
0
看起来 prunsrv 中类路径的语法是这样的:
prunsrv //US//TestService --Description="Some Dummy Test Service" --Startup=auto --Classpath=%CLASSPATH%;test.jar
%CLASSPATH%
当然,它是一个 Windows 环境变量,所以如果您没有该环境变量,请忽略它。
取自文档。
于 2014-01-09T09:25:14.740 回答
0
如果要使用具有嵌入式 jar 依赖项的 jar 创建服务,则必须将 PR_STARTCLASS 设置为“org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader”。
于 2014-02-20T21:01:56.587 回答