我想像这样编译我的java类:javac ResultSet.java
但我收到以下错误:
ResultSet.java:5: error: package data does not exist
import data.Spieler;
^
ResultSet.java:8: error: cannot find symbol
private ArrayList<Spieler> meineSpieler = new ArrayList<Spieler>();
^
symbol: class Spieler
location: class ResultSet
ResultSet.java:12: error: cannot find symbol
public native Spieler[] getSpieler();
^
symbol: class Spieler
location: class ResultSet
ResultSet.java:18: error: cannot find symbol
public ArrayList<Spieler> getMeineSpieler() {
^
symbol: class Spieler
location: class ResultSet
ResultSet.java:8: error: cannot find symbol
private ArrayList<Spieler> meineSpieler = new ArrayList<Spieler>();
^
symbol: class Spieler
location: class ResultSet
如何导入 spieler
类?我应该设置类路径还是有其他方法来解决这个问题?
最佳答案
向上一个目录,然后编译它
javac data/JNIResultSet.java
更新:
好的,您的类 JNIResultSet
位于包 model
中,并且它使用包 data
中的其他类。
那么你的编译命令应该如下:
javac -cp . model/JNIResultSet.java
-cp .
部分表示您的类路径包含当前目录。这是包层次结构的根。因此编译器可以在data
包中找到*.java文件并根据需要编译它们。
你看,这可能非常复杂。对于更多的类(class)来说,这几乎是难以管理的。所以你真的应该考虑使用像 Ant、Maven 或 Gradle 这样的构建系统。
关于java - 用javac编译java类不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39893251/