[英]cannot find symbol error javac command
我正在使用終端來編譯和構建Java程序。 所以我有2個類CP1
和CP2
屬於current
程序包名稱,它們在2個單獨的.java文件中實現CP1.java
和CP2.java
盡管這些類很簡單, CP2.java
是代碼
CP1.java:
package current;
public class CP1{
void hello(){
System.out.println("CP1 class is used");
}
}
CP2.java:
package current;
public class CP2{
public static void main(String [] args){
System.out.println("CP2 class is used");
CP1 c= new CP1();
}
}
由於CP1和CP2是在同一個程序包中定義的,因此我不導入當前程序包。 這兩個.java文件都位於同一目錄中。 CP1.java進行編譯,結果為CP1.class文件。 現在,我嘗試使用-cp選項將CP2.java編譯為:
javac -cp . CP2.java
但是,這會導致錯誤消息:
symbol: class CP1
location: class CP2
CP2.java. error: cannot find symbol
CP1=new CP1
我嘗試了各種cp路徑,但仍然收到相同的錯誤消息。 我究竟做錯了什么?
您缺少實例變量名稱,因此應為
CP1 objname = new CP1();
不是這個
CP1 = new CP1();
注意: objname
可以用任何有效的變量名替換,因此您可以在線搜索命名准則/如何命名變量,也可以嘗試使用官方文檔鏈接
更新:請按照以下步驟進行編譯
1.)好像您位於文件所在的位置,因此只需執行此操作
javac -d . CP1.java
javac -d . CP2.java
-d
將為您生成軟件包(如果不存在)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.