В настоящее время я пытаюсь установитьОтчеты Pentaho для OpenERP. Я установил Pentaho Reports на ноутбуки с Windows, и они работают нормально. В настоящее время я пробую на Ubuntu 11.04, и он выдает мне эту ошибку:
ошибка build.xml: 18: не удалось создать задачу или тип.
Ниже приведены шаги, которые я выполнил:
Установлено
java-6-openjdk
из репозиторияapt-get install java-6-openjdk
Затем я устанавливаю установленный Java JDK в среду java_home
nano /etc/environment
Добавлена среда с этой новой строкой:
JAVA_HOME="/usr/lib/jvm/java-6-openjdk"
Затем я установил Apache Ant из репозитория
apt-get install ant
Далее следует настройка среды
nano /etc/environment
Добавлена среда с этой новой строкой:
ANT_HOME="/usr/share/ant"
Попробовал проверить установку с помощью команды
ant
... и получаю такие сообщения:Buildfile: build.xml does not exist! Build failed
Затем скачал Java-сервер с сайтаОтчеты Pentaho для OpenERPи затем скопировал в папку общего доступа Ubuntu. И затем из командной строки я перешел к извлеченному пути, который является папкой общего доступа. Я указал и выполнил команду
ant war
и получил это сообщение об ошибке:BUILD FAILED /share/java_server/build.xml: 18: problem: failed to create task or type antlibrg:apacge.ivy.ant: retrieve cause: The name is undefined. Action: Check the spelling. Action: Check that any custom taks/types have been declared Action: Check that any <presetdef>/<macrodef>declarations have taken place. No types or taks have been defined in this namespace yet This appears to be an antlib declaration. Action: Check that the implementing library exists in one of: - /usr/share/ant/lib -/root/.ant/lib - A directory added on the command line with the -lib argument Total time: 0 seconds
Есть ли проблема совместимости? Или я упускаю какие-то шаги?
решение1
Попробуйте выполнить следующие действия (мне они помогли):
Обновление openjdk-6-jdk
В /etc/environment добавьте:
JAVA_HOME="/usr/lib/jvm/java-6-openjdk" JRE_HOME="/usr/lib/jvm/java-6-openjdk/jre" ANT_HOME="/usr/share/ant/bin" PATH = ".....:$JAVA_HOME:$JRE_HOME:$ANT_HOME:/usr/share/ant/lib"
Перезагрузите систему.
В java_server введите команду
ant war
. Вы должны получить такое сообщение:Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/tools/ant/launch/Launcher Caused by: java.lang.ClassNotFoundException: org.apache.tools.ant.launch.Launcher at java.net.URLClassLoader$1.run(URLClassLoader.java:217) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:205) at java.lang.ClassLoader.loadClass(ClassLoader.java:321) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) Could not find the main class: org.apache.tools.ant.launch.Launcher. Program will exit.
решение2
Это вызвано тем, что система сборки не может найти библиотеки ivy. Сначала вам нужно установить ivy:
apt-get install ivy
Если ошибка все еще возникает, запустите задание Ant с помощью:
ant -lib /usr/share/java/ war
где /usr/share/java/ — это путь, по которому ivy устанавливает файлы .jar.
Кстати: я не знаю, что именно вы клонировали из git, но по ссылке, которую вы отправили, ресурс ivy определен на строке 27, а не 18, как вы говорите.