Eclipse下執行java檔案出錯

comeontony發表於2011-11-07

個人在Maven工程中執行Java檔案時莫名其妙的不能執行,報如下錯誤

Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/tools/javac/M
ain
Caused by: java.lang.ClassNotFoundException: com.sun.tools.javac.Main
  at java.net.URLClassLoader$1.run(Unknown Source)
  at java.security.AccessController.doPrivileged(Native Method)
  at java.net.URLClassLoader.findClass(Unknown Source)
  at java.lang.ClassLoader.loadClass(Unknown Source)
  at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
  at java.lang.ClassLoader.loadClass(Unknown Source)

 還彈出對話方塊,提示如下:

Could not find the main class: com.sun.tools.javac.Main. Program will exit.

 

 

檢查了工程的classes目錄,正常生成,Eclipse裡面的Problems的error都解決了,還是不行,執行Test.java輸出為空。

在網上搜尋瞭解決方案是新建立一個工程即可。 但是我這個專案,新建立工程再拷貝一些東西過去,特別麻煩。琢磨了半天,將專案工程邏輯刪除,再重新匯入,執行一個Test.java,輸出"hello world!"成功。

 

 

當然出現這種情況,也有可能是其他原因引起的。具體問題需要具體排查,反正我就這麼解決了。

 

 

 

今天是11月8日

 

一大早起來解決該問題:由於maven工程與myeclipse工程的差異,在轉換成myeclipse工程使用時,需要對maven的POM.xml檔案進行顯示的配置myeclipse的srouce路徑和classes路徑。
配置大概如下

<build>
		<finalName>appName</finalName>
		<sourceDirectory>src/main</sourceDirectory>
		<outputDirectory>webapp/WEB-INF/classes</outputDirectory>
		<testSourceDirectory>src/test</testSourceDirectory>
		<testOutputDirectory>webapp/WEB-INF/classes</testOutputDirectory>
</build>



在遇到多個源目錄配置時,可以參考http://duooluu.iteye.com/blog/353883提供的外掛

相關文章