Compilação no Eclipse (URGENTE)

4 respostas
G

Eu fiz um projeto no eclipse 3.1. A versão do java que estou usando é a 1.5.0_06.

O eclipse não apresenta nenhuma mensagem de erro nem nada e consigo executar somente pelo eclipse.

O problema é quando eu tento executar via linha de comando aparecem erros e não roda. Os erros:

at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:12
4)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
        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:268)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)

Eu uso nesse programa bibliotecas(.jar) externas, mas adicionei tudo pelo eclipse.

Eu tenho que configurar o eclipse de alguma maneira para ele compilar e eu poder rodar por linha de comando?

Agradeço desde já,

4 Respostas

B

Ola

Pra rodar seu programa via linha de comando vc tem que incluir os jar’s que vc usa no teu classpath, exemplo:

java -classpath ./lib/outro_jar.jar com.meu_pacote.Main

entendendo que o “outro_jar.jar” é o jar que vc tá usando, e este está dentro do diretorio lib.

G

“BrunoCarlo”:

java -classpath ./lib/outro_jar.jar com.meu_pacote.Main

entendendo que o “outro_jar.jar” é o jar que vc tá usando, e este está dentro do diretorio lib.

como eu faço isso, porque estou usando vários .jar’s…

B

Ola

Bom, ae vc tem que ver, se vc tiver no windows, o separador é “;”, no unix “:”, ae tem as paradas da barra, no windows o separador de diretórios é “”, no unix é “/”, então partindo destas premissas, vou fazer um exemplo no unix:
considerando a arvore abaixo de diretorios:

base
   |- lib
   |- bin

O prompt vai estar dentro do diretorio “base”, os jars dentro do “lib” e os .class dentro do “bin”, vc executa assim:

java -classpath ./lib/first_jar.jar:./lib/secund_jar.jar:./bin com.meupacote.Main [argumentos]

G

se eu incluir somente o diretorio lib:

java -classpath ./lib

Isso Funciona? Porque minha lib está assim:

Base
        |-lib
             |-Junit   -- (aqui dentro tem mais jar)
             |-Log4J -- (aqui dentro tem mais jar)
             |-etc     -- (aqui dentro tem mais jar)
             |-teste.jar (tem outros jar)  
        |-bin
             |-packages e .class.....

Se eu incluir somente o diretorio lib, ele vai saber que dentro dele tem outros diretorios e buscar os jar dentro deles?
Como posso setar isso no windows?

Criado 13 de setembro de 2006
Ultima resposta 13 de set. de 2006
Respostas 4
Participantes 2