2009-07-27 7 views
1

Я установил последние CruiseControl и PHPUnderControl и следил за всеми направлениями. Я застреваю при запуске «../../apache-ant-1.7.0/bin/ant checkout» и получаю вывод ниже. Поиск ошибки в Google, было предложено добавить путь JVM к скрипту Ant, но это ничего не изменило.Использование Ant с PHPUnderControl Дает java.lang.NoClassDefFoundError

Даже «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.

Classpath не был проблемой, и веб-сайт Ant явно говорит, что не следует использовать CLASSPATH.

ответ

0

Использование Java 1.6 разрешило проблему. Мне пришлось изменить/usr/sbin/alteratives, чтобы использовать новую версию Java.

1

Одна из идей - попытаться добавить ant.jar в путь к классам. Вы должны найти банку в apache-ant-1.7.0/lib/ant.jar. Однако я понятия не имею, как указать путь к классам в PHPUnderControl - я не видел этот инструмент.