這個問題的解決方案總結一下:
1,查看project --> Build Automatically有沒有選中?如果沒有,勾上以後,clean一下,重啟eclipse。
2,查看你的lib裡面有沒有不用的(多餘)jar包,看你的.classpath檔案中有沒有錯誤的路徑.
3,這是最重要的一點,有problems視圖中查看有沒有關於本項目的錯誤資訊,一般都會有這樣的話:
      The project cannot be built until build path errors are resolved 
然後下面提示unbound classpath, 一般在.classpath中刪除這些path就可以了
文章出處:飛諾網(www.firnow.com):http://dev.firnow.com/course/4_webprogram/jsp/jsp_js/200827/99678.html
 
 
=================================
今天突然發現eclipse不自動編譯檔案了。立即百度搜了一下,按照網上所說的也做了,但是仍然不管用。
沒辦法自己在那兒瞎弄,意外發現在項目右鍵菜單的[Properties->Java Build Path]中出現如下提示:
Build path entry is missing: /InfoMirrorServer/js
這時才想到自己昨天好像是不小心建錯了檔案夾,然後立即把他刪掉了。難道是這個的原因?我猜想eclipse肯定是在那個檔案
中記錄了這個資訊。於是在項目中顯示所有檔案,看到了一個帶星號的未提交檔案:.classpath
不用問,多半就是他了。開啟一看,在第二行就有這麼一句:<classpathentry kind="src" path="js"/>
源檔案是這樣的:
<classpathentry kind="src" path="src"/>
 <classpathentry kind="src" path="js"/>
 <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
 <classpathentry kind="con" path="com.genuitec.eclipse.j2eedt.core.J2EE14_CONTAINER"/>
 <classpathentry kind="lib" path="WebRoot/WEB-INF/lib/oscore-2.2.5.jar"/>
 <classpathentry kind="lib" path="WebRoot/WEB-INF/lib/InfoFrame2.jar"/>
 <classpathentry kind="lib" path="WebRoot/WEB-INF/lib/ojdbc14.jar"/>
。。。
於是立即將第二行刪除,儲存。哈哈,問題解決!
個人猜想eclipse在編譯時間讀取該檔案,執行第二行時發現js檔案夾不存在,因此拋出異常不往下執行了才導致
的無法編譯。
以上是個人遇到的一種無法編譯的情況的解決方案,拿出來跟大家分享。
文章出處:飛諾網(www.firnow.com):http://dev.firnow.com/course/3_program/java/javajs/20081011/149966.html
 
 
============================
 
總結的關於eclipse不編譯類的問題
1. 確保 Project -> Build Automatically    已經被選上.
2. 如果選上了,也不好使, 使用這一招: Project -> Clean..-> 選第2個Clean pjoject selected below, 選中項目, 點擊 "OK"
3.刪除現在的項目,提前設定好編譯檔案輸出路徑,重新匯入源檔案,設定eclipse為儲存時編譯,然後在儲存的時候就可以自動編譯了
4.如果項目裡引了某個不用的jar包,而那個包又被你刪了,就會出現不報錯但怎麼也編譯不出來class檔案的情況,可以把所有包都刪除,然後一個一個的再引入(需要的),不要一下子把所有包都引入來,沒用的可能會引起不良後果.
5. 想刪掉某個class檔案重建,刪除class檔案後,但classes目錄下的檔案夾被其它程式開啟,比如Total Commander。此時編譯也不會通過,在problems下可能會提示“con''t delete classes ……”。關掉其它程式重新編譯即可。
6.還有種情況是remove掉 JRE System Library,重新匯入即可編譯。但是什麼原因導致的還不清楚。
7.把build path中所有包都remove掉。然後又add jars,add libraries把需要的加進去,居然又開始編譯了。。。
8.Project -> Properties -> Java Build Path -> Source-> WebRoot/WEB-INF/classes
然後重新點擊build工程即可自動編譯。
9.再就是最重要的要看工程下面是否缺少了work目錄,由於CVS控制時不把work加如版本,所以checkout後沒有這個目錄,要手工加上有的工程就能自動編譯了