Problema com packages

4 respostas
antoniodourado

Bom dia pessoal…
Venho tentando fazer algumas coisas em java e me deparei com o seguinte problema:

Utilizo a Ide Eclipse aki em casa, fiz um package chamado retangulo1 dentro do projeto JavaFac.
O package retangulo1 contem 2 classes, a Retângulo que não contem o main e o ManipulaRetangulo que contem o main e instancia a classe Retangulo…

Pois bem… tudo funciona mto bem no Eclipse mas… ao tentar executar isso no Dos (ainda nao tentei isso no linux), ele da pau:

Exception in thread "main" java.lang.NoClassDefFoundError: Manipula
ong name: retangulo1/ManipulaRetangulo)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Sour
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$000(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Metho
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Sourc
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)

ao tentar compilar o ManipulaRetangulo, acusa o seguinte erro (no DOS):

ManipulaRetangulo.java:24: cannot find symbol
symbol  : class Retangulo
location: class retangulo1.ManipulaRetangulo
                Retangulo retangulo = new Retangulo(1,1);
                ^
ManipulaRetangulo.java:24: cannot find symbol
symbol  : class Retangulo
location: class retangulo1.ManipulaRetangulo
                Retangulo retangulo = new Retangulo(1,1);
                                          ^
2 errors

Ou seja, o package retangulo1 ta dando algum problema q eu nao consigo corrigir…
PS: sim eles estão no mesmo diretório, existem apenas essas 2 classes!
PS2: eles estão dentro de JavaFac/retangulo1/ tb =]

Então comentei a linha “package retangulo1” nos 2 arquivos .java e tentei… dessa vez deu certo… mas minha duvida é:
O que acontece com o package qdo rodo ele no DOS e não da certo?

Valeu pessoal!

4 Respostas

Adolfo_Rodrigues

Você chegou a abrir o seu jar pra ver se o arquivo Retangulo.class estão lá dentro?

E

http://www.guj.com.br/java.tutorial.artigo.108.1.guj

antoniodourado

Po pessoal, axo q eu me confundi com o conceito de packages :?

nao sabia q tinha q criar .jar e essas coisas…

antoniodourado

Consegui rodar eles saindo do diretorio retangulo1 e dando um:

java retangulo1/ManipulaRetangulo

:slight_smile:

Criado 20 de maio de 2007
Ultima resposta 20 de mai. de 2007
Respostas 4
Participantes 3