包不存在错误!
我在根目录下有一个像com/example/web
这样的目录结构,它包含一个java文件Bear.java
。 我在目录结构com/example/model
中有另一个java文件BearExtra.java
位于上面相同的根目录中。 我在BearExtra.java
调用BearExtra.java
的方法,我收到包不存在的错误。
我在java文件中导入了com.example.model
包。 可以给我一些建议吗?
这有效:
COM /示例/模型/ BearExtra.java
package com.example.model; public class BearExtra { public static void go() { System.out.println("Yay, it works!"); } }
COM /示例/网络/ Bear.java
package com.example.web; import com.example.model.*; public class Bear { public static void main(String[] args) { BearExtra.go(); } }
现在,要编译并运行这些类,请转到可以“查看” com
文件夹的目录,并执行以下操作:
* nix中/ MacOS的
javac -cp . com/example/model/*.java com/example/web/*.java java -cp . com.example.web.Bear
视窗
javac -cp . com\example\model\*.java com\example\web\*.java java -cp . com.example.web.Bear
并且以下内容正在打印到控制台:
Yay, it works!
您是否在类文件中指定了“包”?
Bear.java
package com.example.web; import com.example.model.*; class Bear { ...
BearExtra.java
package com.example.model; public class BearExtra { ...