[英]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.