2012-05-01 47 views
0

這必須是一個超級超級問題。雖然這裏有:使用jar中的類的Java

我有一個java文件用於測試(hworld.java)並試圖導入conio.jar,這是一個包裝Conio的JAR。 JAR只包含一個類文件(conio.class)和META-INF。試圖做import conio.*import conio.conio顯示我:

C:\Documents and Settings\Nick\Desktop>javac -cp *.jar; hworld.java 
hworld.java:3: error: package conio does not exist 
import conio.*; 
^ 
1 error 

和編譯它像javac -cp conio.jar hworld.java仍然出現了錯誤,而編譯。我甚至提取了jar,並將conio.class放在與hworld.java相同的目錄下,但無濟於事。 JAR與hworld.java在同一個目錄中。

任何人有任何想法如何解決這個問題?

+0

如果Conio類真的不在包中,只需嘗試導入Conio; – rooftop

+0

@rooftop hworld.java:3:錯誤:'。'預計 進口conio; –

+0

@SuperDisk如果它沒有包(AKA默認包),那麼您根本不需要導入它......完全刪除導入行。 – yair

回答

0

你不提conio.class是否在包conio定義。如果不是,那麼只需使用該類而不導入它。刪除導入。

+0

..對於java來說,這看起來很愚蠢! 但它確實有效。儘管對於查看現有代碼庫的新編碼人員來說,他們永遠不會知道所有函數的定義,除非他/她查看了makefile或其他東西。多麼愚蠢。 –

0

找出Conio所在的軟件包 - 一種簡單的方法是將jar打開爲壓縮文件,該軟件包將與壓縮文件的文件夾結構相對應。例如,如果Conio位於x/y/z中,則導入x.y.z.Conio並在conmate.jar上編譯/運行。