Atualmente estou tentando instalarRelatórios Pentaho para OpenERP. Instalei o Pentaho Reports em laptops baseados em Windows e eles estão funcionando bem. Atualmente estou experimentando o Ubuntu 11.04 e me dá este erro:
erro build.xml: 18: falha ao criar tarefa ou tipo.
Abaixo estão as etapas que executei:
Instalado
java-6-openjdk
a partir do repositórioapt-get install java-6-openjdk
Então eu configurei o Java JDK instalado no ambiente java_home
nano /etc/environment
Adicionado ambiente com esta nova linha:
JAVA_HOME="/usr/lib/jvm/java-6-openjdk"
Eu então instalei o Apache ant do repositório
apt-get install ant
Seguido pela configuração do ambiente
nano /etc/environment
Adicionado ambiente com esta nova linha:
ANT_HOME="/usr/share/ant"
Tentei verificar a instalação com o comando
ant
... e recebo mensagens como esta:Buildfile: build.xml does not exist! Build failed
Em seguida, baixei o servidor Java deRelatórios Pentaho para OpenERPe depois copiei para a pasta de compartilhamento do Ubuntu. E então, na linha de comando, fui para o caminho extraído, que é a pasta de compartilhamento. Mencionei e executei o comando
ant war
e recebi esta mensagem de erro: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
Existe algum problema de compatibilidade? Ou estou perdendo algumas etapas?
Responder1
Tente estas etapas (elas funcionaram para mim):
Atualizar openjdk-6-jdk
Em /etc/environment adicione:
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"
Reinicie seu sistema
Em java_server insira o comando
ant war
. Você deve receber esta mensagem: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.
Responder2
Isso é causado pelo fato de o sistema de compilação não conseguir encontrar bibliotecas ivy. Você precisa instalar o ivy primeiro:
apt-get install ivy
Se ainda estiver reclamando do mesmo erro, execute o ant job usando:
ant -lib /usr/share/java/ war
onde /usr/share/java/ é um caminho, onde ivy instala os arquivos .jar.
Aliás: não sei exatamente o que você clonou do git, mas no link que você enviou está o recurso ivy definido na linha 27, não na 18, como você disse.