[英]Java classes are in the same package (different directories) but they can't access each other
我有兩個文件:
MyProject / src / main / java / foo_package / bar_package / MainClass.java MyProject / src / gen / java / foo_package / bar_package / OtherClass.java
在這兩個類中,第一行是:
package foo_package.bar_package;
如果我打電話給:
OtherClass foo = new OtherClass();
它無法解析符號OtherClass。 這是為什么?
我嘗試過的
上一堂課的路徑似乎有問題:
MyProject / src / main /java/foo_package/bar_package/MainClass.java MyProject / src / gen /java/foo_package/bar_package/OtherClass.java
如果您的類具有相同的程序包(程序包在../java/
之后../java/
),但它們不是Java構建路徑的一部分,則IDE不會將其識別為有效。
試試你的移動OtherClass.java
到的包MainClass.java
是。 這樣做最終應該可以解決您的問題。
PS:請注意項目的源文件夾(大多數情況下,默認情況下, main
是源文件夾,足夠了,但是可能還有其他源文件夾,通常是手動添加的)。
確保您的IDEA源文件夾是java
,而不是src
(對於/gen/
內部和/main
內部的兩個java
文件夾)。 在“項目”窗口( Alt + 1
)中,源根目錄被標記為藍色目錄。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.