2012-04-22 72 views
1

對於類,我得到了一個.class文件(no .java),我需要在該.class文件中創建一個方法的一些JUnit測試。但是,我不確定如何訪問該方法。順便說一句,我使用Eclipse。在Java類文件中使用方法

我可以導入文件路徑,但它看不到.class文件。含義。 。 。該文件是/class/file/utility/StringUtility.class。

import class.file.utility。*; (作品) import class.file.utility.StringUtility; (給出錯誤)

我嘗試使用第一次導入,但我有類似的問題,當我嘗試訪問類文件。含義。 。 。

StringUtility newUtil = new StringUtility(); (提示錯誤 - 。它不知道StringUtility是什麼

任何幫助,將不勝感激

解決方案的下層溶液的下層溶液低於

由於我是新來的論壇上,我不能回答我的但是,這裏是解決方案...

謝謝大家的幫助!您指出我的方向正確,我能夠理清我的問題。如果有人遇到同樣的問題,這裏是我如何解決這個問題。再一次,我使用Eclipse(Indigo)。

1)文件 - >導入 - >存檔文件

點擊Next

然後我瀏覽到正確的目錄,並與我的.class文件中選擇的zip文件。

這增加了檔案到我的項目。

2)右鍵單擊項目。選擇構建路徑 - >配置構建路徑

在「庫」選項卡下,我選擇了「添加類文件夾」。然後我選擇了剛添加的.class文件的文件夾。

然後我輸入了StringUtil newUtil;和「Quick Fix」導入代碼。

希望這可以讓我省下四個小時來解決問題。 :)

再次,謝謝大家的意見。正如我所提到的,他們是有幫助的。

+0

你是否肯定類是在你的類路徑上?因爲如果是這樣,並且您編寫了'StringUtility newUtil',然後在Eclipse中使用了快速修復,導入或組織導入,則它會計算出必要的導入。您採取了哪些步驟來配置Java Build Path,以便該類位於類路徑中? – 2012-04-22 17:49:50

+0

*「任何幫助,將不勝感激。」*任何問題將是有益的。順便說一句 - 不要忘記添加作業標籤的作業問題。 – 2012-04-22 17:57:38

+0

我使用了其中一個答案中提示的javap來驗證正確的路徑(你是正確的類不在路徑中)。我嘗試了幾件事。首先是我創建了一個與javap(file.utility)中顯示的內容匹配的包結構。我可以導入該包結構,但我仍然遇到file.utility.StringUtility錯誤。它說「導入file.utility.StringUtility無法解析」。我的導入語句是:import file.utility.StringUtility。我也嘗試通過「添加文件夾」來更改構建目錄,但同樣的問題。 – user538335 2012-04-22 18:30:25

回答

1

從命令行,您可以運行javap命令來查看類文件中的內容並獲取您的方向。例如,如果您收到的文件被稱爲在該目錄中的命令提示符下Test.class鍵入此文件所在的文件實際上位於:

javap Test 

以上將讓你找到了正確的程序包導入類,並查看類文件中的方法簽名。

而且,我懷疑是正確的import語句應該是:

import file.utility.StringUtility 

也就是說,假設你自己的類都位於正確的軟件包。

+0

謝謝關於javap的提示。我對此並不熟悉。 – user538335 2012-04-22 18:14:43

+0

@ user538335試試看,如果這個或其他答案對你有幫助,請不要忘記接受它是正確的(點擊左邊的複選標記) – 2012-04-22 18:15:52

0

該課程的實際包裝很可能是file.utility,這意味着您應該將class文件夾添加到測試項目的構建路徑中,並相應地調整導入。

相關問題