这是基本Java最愚蠢,最简单的问题,但我做错了什么?
在名为
的目录结构中com/myname/robos
- Robo.java
- Arena.java
Robo.java:
package com.myname.robos;
public class Robo {
public void fala() {
System.out.println("Gleep Beep Boop!");
}
}
Arena.java:
package com.myname.robos;
import com.myname.robos.Robo;
public class Arena {
public static void main(String[] args) {
Robo r2 = new Robo();
r2.fala();
}
}
当我尝试:
javac Robo.java
它编译。</ p>
然后我尝试
javac Arena.java
我得到了
Arena.java:3: error: cannot find symbol
import com.myname.robos.Robo;
^
symbol: class Robo
location: package com.myname.robos
Arena.java:8: error: cannot find symbol
Robo r2 = new Robo();
^
symbol: class Robo
location: class Arena
Arena.java:8: error: cannot find symbol
Robo r2 = new Robo();
^
symbol: class Robo
location: class Arena
3 errors
我知道目录/包等名称之间不兼容的错误。
但我仍然没有做到这一点。 我应该写什么?
答案 0 :(得分:0)
您需要确保您的文件与包引用的结构相同,例如:
如果您的.java文件位于../Desktop,则必须创建名称为com,myname和robos的文件夹,然后将其粘贴到那里,以便您的文件位于../Desktop/com/myname/robos
然后你只需要编译Arena.java并运行它:
$ javac com / myname / robos / Arena.java
$ java com / myname / robos / Arena
将你放在里面../桌面