2011-11-21 115 views
3

在Jenkins内部,我已经设置了一个build.xml来使用Ant来编译Java代码并以jar的形式输出。 我可以在命令行中没有问题的情况下运行编译的jar。 但是,在让Jenkins运行相同的jar文件之后,我遇到了一个错误“[exec]错误:无法找到或加载主类”。为什么Jenkins无法运行已编译的jar文件

我检查了这两种情况下的类路径(在命令行中与在Jenkins中)并得到了相同的结果。

这太离奇了。我的Jenkins是最新的长期支持版本,Java是1.7。

+0

你是如何检查Jenkins类路径的? –

+1

我相信Jenkins服务器在不同的环境中运行构建...因此,尽管jenkins服务器上的类路径是正确的,但您错过了Jenkins运行构建的JVM中的库吗? – jayunit100

+0

我用一个bash脚本在一个jar中调用我编译的类。在bash脚本中,我添加了一个echo $ {CLASSPATH}命令。 – Leo5188

回答

2

终于弄清楚原因。我有一个可以被组员访问的文件。但是,詹金斯使用自己的帐户(无法访问运行该程序所需的文件)。在授予Jenkins访问权限后,我的程序(bash脚本)可以毫无问题地运行。