0
我一直在Sublime 3上試圖學習更多Java API的2D遊戲教程,我被困在了一個我找不到的編譯錯誤中。如何在Java中手動管理項目包?
error: cannot find symbol
add(new Board());
^
我從工作的教程是http://zetcode.com/tutorials/javagamestutorial/basics/
的兩個階層的我有如下
package com.zetcode;
import javax.swing.JPanel;
public class Board extends JPanel{
public Board() {}
}
和
package com.zetcode;
import java.awt.EventQueue;
import javax.swing.JFrame;
public class Application extends JFrame{
public Application() {
initUI();
}
private void initUI(){
add(new Board());
setSize(330, 330);
setTitle("App");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
}
public static void main(String[] args){
EventQueue.invokeLater(new Runnable() {
@Override
public void run(){
Application ex = new Application();
ex.setVisible(true);
}
});
}
}
我知道這個問題是我的包聲明,但我不知道爲什麼。我仔細閱讀了關於此問題的文檔(https://docs.oracle.com/javase/tutorial/java/package/usepkgs.html),並試圖將軟件包名稱更改爲package gametest
,並將我的java源代碼粘貼到名爲gametest
的目錄中,但Javac仍然不知道Board()
在Application類中。
你是否設置了類路徑進行編譯? – Jan
當我嘗試'javac -classpath ...'時,它仍然會說同樣的錯誤,如果我正確地做了這件事。 – GhostRavenstorm
你能分享你的設置嗎?調用javac時你在什麼文件夾?包/文件夾com.zetcode相對於那個在哪裏? – Jan