Package com erro porque neste caso?

5 respostas
J

Amigos, fiz os seguintes arquivos :


Person.java

package com.jcw;

public class Person
{
        public static void main(String args[])
        {
                Human someone = new Human();
                Rat somerat = new Rat();
                
                somerat.HaveDisease =true;
                someone.year_birth = 56;
                
                System.out.println(someone.year_birth);
                System.out.println(somerat.HaveDisease);
        }
}

Rat.java

package com.jcw;

class Rat
{
        boolean HaveDisease;
}

Human.java

package com.jcw;

class Human 
{
    int year_birth;
}

na hora de compilar com :

javac -cp . -d . Person.java

eu recebo isto :

$ javac -cp . -d . Person.java

Person.java:7: cannot find symbol

symbol  : class Human

location: class com.jcw.Person

Human someone = new Human();

^

Person.java:7: cannot find symbol

symbol  : class Human

location: class com.jcw.Person

Human someone = new Human();

^

Person.java:8: cannot find symbol

symbol  : class Rat

location: class com.jcw.Person

Rat somerat = new Rat();

^

Person.java:8: cannot find symbol

symbol  : class Rat

location: class com.jcw.Person

Rat somerat = new Rat();

^

4 errors

Qual o problema ??

5 Respostas

J

Alguém poderia me ajudar com isto ? É importante para mim !

eltonads

Tente compilando a classe Human primeiro…

Boa sorte!

thiago.correa

Você está tentando compilar as suas classes sem dizer os pacotes, logo, ela não vai ser encontrada!

Exemplo, tenho duas classes A e B

package com.fox;

class A {
}


package com.fox;

class B {

	B b;
}

no meu prompt eu estou no diretório

c:\temp\src

comando
javac com/fox/A.java
javac com/fox/B.java

Se é tão urgente não espere a resposta, corra atrás dela, o site da sun tem documentação sobre o compilador java

J

Thiago,

Sua sugestão não funcionou. O comando
javac /com/fox/A.java
não dá certo.

E como você sabe que eu apenas esperei a resposta e não correi atrás dela ?
Eu coloquei aqui a pergunta, e continuei a buscar em vários lugares, voltava aqui sempre para ver
se alguém podia me ajudar respondendo.

Você presumiu errado e preciptadamente, além de ter dado uma solução que falhou.

Além do que, o site da Sun não tem só informações sobre o compilador java, tem informações sobre o java como um todo.
Se o teu pensamento fosse correto, porque afinal criar um forum de java, se o site da Sun tem tudo ?

Achei interessante seu lema :
“Se não puder ajudar, atrapalhe, afinal de contas o importante é participar!”

Obrigado.

thiago.correa

Mas é claro que vai falhar, o comando é javac com/fox/A.java e não javac /com/fox/A.java

Para completar aqui ensina a usar o compilador java
[url]http://java.sun.com/j2se/1.4.2/docs/tooldocs/windows/javac.html#examples[/url]

Bom, a estrutura do diretório é a que segue

C:\Temp\src>tree
Listagem de caminhos de pasta
O número de série do volume é D6B5-6EDA
C:.
└───com
    └───fox

Listando o que há em cada diretório

C:\Temp\src>dir /s
 O volume na unidade C não tem nome.
 O número de série do volume é D6B5-6EDA

 Pasta de C:\Temp\src

10/06/2009  17:00    <DIR>          .
10/06/2009  17:00    <DIR>          ..
10/06/2009  17:00    <DIR>          com
               0 arquivo(s)              0 bytes

 Pasta de C:\Temp\src\com

10/06/2009  17:00    <DIR>          .
10/06/2009  17:00    <DIR>          ..
10/06/2009  17:04    <DIR>          fox
               0 arquivo(s)              0 bytes

 Pasta de C:\Temp\src\com\fox

10/06/2009  17:04    <DIR>          .
10/06/2009  17:04    <DIR>          ..
10/06/2009  17:04               184 A.class
10/06/2009  17:01                30 A.java
10/06/2009  17:04               210 B.class
10/06/2009  17:05                41 B.java

Boa sorte!!!!

Criado 10 de junho de 2009
Ultima resposta 10 de jun. de 2009
Respostas 5
Participantes 3