1

我已经安装了最新的 CruiseControl 和 PHPUnderControl,并按照所有说明进行操作。我卡在运行“../../apache-ant-1.7.0/bin/ant checkout”并得到下面的输出。在 Google 上搜索错误,建议将 JVM 路径添加到 Ant 脚本中,但这并没有改变任何东西。

甚至“ant --version”也会输出这个错误。

在运行的任何其他应用程序上似乎没有其他与 Java 相关的问题。

Exception in thread "main" java.lang.NoClassDefFoundError: org.apache.tools.ant.launch.Launcher
   at gnu.gcj.runtime.FirstThread.run() (/usr/lib/libgcj.so.5.0.0)
   at _Jv_ThreadRun(java.lang.Thread) (/usr/lib/libgcj.so.5.0.0)
   at _Jv_RunMain(java.lang.Class, byte const, int, byte const, boolean) (/usr/lib/libgcj.so.5.0.0)
   at __gcj_personality_v0 (/var/www/internal/cruisecontrol/cruisecontrol-bin-2.8.2/projects/mytrial/java.version=1.4.2)
   at __libc_start_main (/lib/tls/libc-2.3.4.so)
   at _Jv_RegisterClasses (/var/www/internal/cruisecontrol/cruisecontrol-bin-2.8.2/projects/mytrial/java.version=1.4.2)

我已将 Ant 更新到 1.7.1,但问题仍然存在。我也尝试将 Java 更新到 1.6,但安装后它仍然报告为 1.4.2。

类路径不是问题,Ant 网站明确表示不要使用 CLASSPATH。

4

2 回答 2

1

一个想法是尝试添加ant.jar到类路径中。你应该在apache-ant-1.7.0/lib/ant.jar. 但是,我不知道如何在 PHPUnderControl 中指定类路径——我还没有看到那个工具。

于 2009-07-27T19:47:38.297 回答
0

使用 Java 1.6 解决了这个问题。我不得不修改 /usr/sbin/alteratives 以使用新版本的 Java。

于 2009-07-29T17:59:28.363 回答