Brigando com o Ubuntu, Java, Eclipse, Tomcat e variáveis de ambiente

terça-feira, maio 13, 2008

Depois de postar sobre como configurar o Java no Ubuntu 8.04, e como resolver o problema (bug?) do Java 6, eis que meu ambiente de desenvolvimento se rebelou.

Primeiro gostaria de pedir desculpas caso alguém tenha tentado usar o método da variável JAVA_OPTS no /etc/environment e não tenha funcionado (funcionava muito bem no meu antigo Ubuntu 7.10). Caso você tenha conseguido configurar tudo certo por este método, fico feliz, pois é muito mais simples.

Leia o resto deste post »


Java 6: Exception [Ljava.lang.String

sábado, maio 10, 2008

Existe um problema ao tentar executar o seguinte código no Java 6 (não ocorre quando utiliza-se o Java 5) :

public class Test {
public static void main(String[] args) throws Exception {
String[] s = new String[] { “123″ };
String clName = s.getClass().getName();
Test.class.getClassLoader().loadClass(clName);
System.out.println(s);
}
}

O seguinte erro é descrito:

Exception in thread “main” java.lang.ClassNotFoundException: [Ljava.lang.String;
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at BugJava6.main(Test.java:14)

Isto ocorreu também, quando tentei iniciar uma aplicação no Tomcat. O erro acima podia ser observado nos logs do mesmo (apache-tomcat-dir/logs/catalina.out).

Para contornar este problema, deve-se:

  • Iniciar a JVM com o parâmetro: -Dsun.lang.ClassLoader.allowArraySyntax=true
  • Criar a variável de ambiente JAVA_OPTS=”-Dsun.lang.ClassLoader.allowArraySyntax=true”

Particularmente prefiro a segunda opção. Caso você tenha visto o artigo de como instalar o Java no Ubuntu 8.04, basta abrir o arquivo /etc/environment e inserir avariável JAVA_OPTS no final do arquivo.

Agradecimentos ao Antonio, que sofreu primeiramente com o problema, passando para mim a solução posteriormente. E neste link tem uma discussão sobre o problema.

É isso, valeu!

Atualizado em 13/05/2008: Caso essa técnica não funcione, por favor, leia este post.


Instalar e configurar Java no Ubuntu 8.04

quarta-feira, maio 07, 2008

Prefiro ter controle do local de instalação das minhas ferramentas de trabalho. É mais fácil instalar o Java pelo Synaptic, apt, aptitude, etc, porém não é nada difícil configurar o Java manualmente, via console. A seguir, veja os passos para uma instalação bem sucedida. Ao final, descubra como colocar o plugin do Java que acabou de ser instalado, no Firefox.

Leia o resto deste post »