2011-02-18 74 views
0

一切正常罰款,但突然日食停止執行和JUnit測試,甚至主要方法,當我使用運行方式運行它們 - > Java應用程序,運行爲 - > JUnit測試Eclipse的ClassNotFoundException的

它只是拋出錯誤

Caused by: java.lang.ClassNotFoundException: package.ClassName 

whene ClassName - 是我嘗試運行方法main的類。 它隻影響我的其中一個項目...不同的工作區工作正常,同一工作區中的其他項目也能正常工作。

我確定如果我重新創建當前項目,錯誤將消失。但是在eclipse中調整這個項目非常困難,所以我想避免它。

任何線索?

+0

我唯一能想到的就是看你的.project文件,並將它與其他項目進行比較,看看有什麼損壞。 – CoolBeans 2011-02-18 17:19:35

回答

0

好吧,我終於明白了。問題是在eclipse設置中安裝了JRE。我正在玩這個設置,並將安裝的JRE更改爲JDK,由於某種原因,它打破了eclipse項目。

2

ClassName不在Class Path中,如果從控制檯啓動,應該使用-cp參數,如果來自eclipse,請將ClassName添加到當前(啓動)項目的源中。

+0

這個問題不是關於classPath,這個問題是關於eclipse的設置的。如果你閱讀我的問題,你應該明白,ClassName - 是我從哪裏運行方法main的類。所以當然它已經在當前項目的來源中。 – user12384512 2011-02-19 10:37:16

+0

@aauser,如果你收到這樣的異常,這意味着這個類不在源,你不明白我寫了什麼!檢查你的eclipse /項目設置(Java Build Path/Source)。 – jitm 2011-02-19 20:13:10

0

由於adarshr,我能看問題窗口並確定構建是失敗,因爲它找不到我寫了一個類。

我曾用MS TFS插件創造「擱置」和它應該已經打消了我在這個過程中掛起的更改。然而,隨着TFS管理單元和Eclipse這種整合顯然不是很好的執行,因爲Eclipse項目仍然認爲該文件存在,抱怨,它不能被編譯。

我去和手動刪除那些從Eclipse項目「文件」或「不存在的文件」(我以爲我已經與擱置行動移除),問題就解決了。

而且....

另一個惱人的事情之一是,Tomcat的錯誤,我試圖在Eclipse中調試越來越是這樣的:

重度: 類的錯誤配置應用程序監聽器COM .CompanyName.ProjectName.servlet.StartupConfigListener 拋出java.lang.ClassNotFoundException: com.CompanyName.ProjectName.servlet.StartupConfigListener在 org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1643)

在現實中,沒有任何問題都與StartupConfigListener.java!構建由於我上面提到的其他問題失敗了,因此我想這是它試圖加載和失敗的一流....因爲整個項目未能或許編譯?

(我們也希望我的下一個項目使用Visual Studio,而不是Eclipse的!)

-1

您還可以嘗試回到基本。檢查你的命令行和虛擬機參數。我遇到了這種情況,即我傳入的虛擬機參數是路徑中存在空間的文件的路徑,而我忘記了將完整路徑包含在引號中。因此,例如,如果我的精氨酸看起來像

-DFILE=C:\Documents and Settings\myfile 

...我會得到引起了java.lang.ClassNotFoundException一個java.lang.NoClassDefFoundError。

相關問題