簡體   English   中英

不同程序包中的Java文件無法編譯

[英]java files in different package not compiling

這是我的代碼

package com.a;
public class A{}

我用編譯

javac -d . A.java

我在com / a / A.claas中編譯

現在我創建了另一個類

package com.b;
import com.a.A;
class B extends A{}

javac -d . B.java編譯它javac -d . B.java javac -d . B.java和拋出錯誤

B.java:2: error: cannot find symbol
import com.a.A;
        ^
symbol:   class A
location: package com.a
B.java:3: error: cannot find symbol
class B extends A{}
              ^
symbol: class A
2 errors

有人可以幫忙嗎?

編譯器正在檢查您的代碼,並且由於您僅同時編譯類B而沒有同時編譯類A ,因此編譯器會拋出錯誤,因為它不知道A是什么。 因此,您可以同時編譯所有類

javac -d . A.java B.java

或者使用-classpath選項告訴javac在哪里找到A類。 您指定的類路徑應該是包含A的.jar文件,或者是您的類結構的基本目錄。 也就是說,如果您的A類位於/foo/bar/com/a/A.class ,則您的類路徑將為/foo/bar/

javac -classpath . -d . B.java

還要查看javac 的手冊頁

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM