簡體   English   中英

一起編譯Java類

[英]Compiling Java Classes Together

我以為我是新來的,但是當我在單獨文件的類之外創建對象時,只有在同一目錄中定義了該類,或者從庫中導入該類時,它才會編譯。 我以為它使用類路徑來搜索包含的類文件,但是當我向類路徑添加一個隨機目錄(並且僅將該文件放在此處)時,它仍然抱怨類未定義並且無法編譯。 它在哪里知道在編譯時尋找類?

public class SomeClass {

public SomeOtherClass SoC; // If this class is not in library or same directory -- won't compile.

}
// If this class is not in library or same directory -- won't compile

正確。 您的類必須位於類路徑中,或位於您指定的.jar中。

編譯時,您將使用

javac -classpath .:/some/other:/another:/some/foo.jar

然后,您可以在.java文件中import任何內容(您的代碼)

除了導入,您還必須在類路徑上具有表示類包的文件夾。

例:

com.whatever.SomeClass類位於src/java/com/whatever/SomeClass.class 現在,類路徑應該包含src/java/並從那里com.whatever包。

如果這些類在.jar文件中,則將jar放在類路徑中。 在.jar內,您將再次擁有com/whatever/SomeClass.class (請注意,.jar基本上是一種類似zip的格式)。

暫無
暫無

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

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