Pessoal!
Está correto esta estrutura de diretórios e os packages…:
(os pontos são apenas para alinahs o texto)
c:
|__ MyClass
…|__ MyAux
…|…|__ MyAux.java (package MyClass.MyAux; import MyClass.*; )
…|
…|__ MyClass.java (package MyClass;)
Pessoal!
Está correto esta estrutura de diretórios e os packages…:
(os pontos são apenas para alinahs o texto)
c:
|__ MyClass
…|__ MyAux
…|…|__ MyAux.java (package MyClass.MyAux; import MyClass.*; )
…|
…|__ MyClass.java (package MyClass;)
Opa Ze, tudo bom? Infelizmente, num ta certo naum…
Primeiro, siga os padroes que o pessoal usa na linguagem java, pacotes em letras minusculas, classes com primeira letra maiuscula e a cada palavra tambem letra maiscula.
Lembrando disso, vamos em frente:
diretorio base: c:/
diretorios dentro do base:
/meupacote
/meupacote/meupacoteinterno
classes:
c:/MinhaClasse.java --> MinhaClasse
c:/meupacote/MinhaClasseNoPacote.java --> meupacote.MinhaClasseNoPacote
c:/meupacote/meupacoteinterno/MinhaClasseNoPacoteInterno.java --> meupacote.meupacoteinterno.MinhaClasseNoPacoteInterno
Abracao
Gui
[quote=“Zé”]Pessoal!
Está correto esta estrutura de diretórios e os packages…:
(os pontos são apenas para alinahs o texto)
c:
|__ MyClass
…|__ MyAux
…|…|__ MyAux.java (package MyClass.MyAux; import MyClass.*; )
…|
…|__ MyClass.java (package MyClass;)[/quote]
Gui,
Olá e obrigado pela atenção.
Fiz conforme me indicaste. Porém tive problemas. Em cima do exemplo que você postou, vou reportar meu problema
Eis teu exemplo;
c:/meupacote/MinhaClasseNoPacote.java
(meupacote.MinhaClasseNoPacote)
c:/meupacote/meupacoteinterno/MinhaClasseNoPacoteInterno.java
(meupacote.meupacoteinterno.MinhaClasseNoPacoteInterno)
O problema que tive foi na classe “meupacote.meupacoteinterno.MinhaClasseNoPacoteInterno”, pois dentro dela fiz um “import meupacote.*;” mas mesmo assim não consigo enchergar “meupacote.MinhaClasseNoPacote”. Já coloquei no classpath os 2 diretórios mas mesmo assim não rolou.
T+!
Opa Ze, entao seu problema eh entender o funcionamento de pacotes.
Quando voce tem um pacote chamado /meupacote ou /meupacote/meupacoteinterno, o diretorio raiz das suas classes eh o /, entao eh esse diretorio / que deve ser o seu classpath…
Quando voce colocou o diretorio /meupacote e /meupacote/meupacoteinerno no classpath, o java tentou procurar a classe interna em: /meupacote/meupacote/meupacoteinterno/ClasseInterna (nao existe) e /meupacote/meupacoteinterno/meupacote/meupacoteinterno/ClasseInterna (nao existe)
isto eh, o compilador adiciona os diretorios do pacote para cada caminho do classpath, nao achando a classe. no momento que voce adicionar a raiz ele ira entrar no diretorio correto e achar a classe
Abracao
gui