1. 程式人生 > >MyEclipse不能自動編譯解決方法總結(轉)/debug時斷點亂跳問題的解決辦法

MyEclipse不能自動編譯解決方法總結(轉)/debug時斷點亂跳問題的解決辦法

MyEclipse不能自動編譯解決方法總結(轉)

前言:工具在給人帶來方便的同時,相伴而來的也有不可預知的問題。

    在使用整合開發工具進行專案開發時,我們不僅要了解自己寫的程式碼,還需要了解
我們使用的整合開發工具。並且,越是整合度高的IDE,複雜度就越高,我們定位問題就
越困難。本人最近開發的專案,由於專案使用的BTP開發工具是在開源的eclipse上整合
的,所有一旦出現問題,根源更難定位。

    今天要說的,就是使用類eclipse開發工具,比如eclipse/Myeclipse/BTP開發時,
不能自動編譯的問題。

    自動編譯其實就是,程式碼修改以後,不用重新編譯整個專案,就可以增加修改的功
能。在使用IDE時,我們或多或少都遇到過不能自動編譯的問題,如何解決不能自動編譯
的問題?

    先來說說“如何解決不能自動編譯的問題?”,熱心網友整理的很全面,我就不再贅
述,下面的內容來自部落格:
http://www.cnblogs.com/ahao/archive/2010/10/26/1861579.html

1,確保project->build automatically 已經被勾選上,也就是確保勾選上了自動編譯。

2,project->clean..->選第2個clean select project,也就是重新清理一下專案。

3,刪除現在的專案,提前設定好編譯檔案輸出路徑,重新匯入原始檔,設定MyEclipse

為儲存時編譯,然後在儲存的時候就可以自動編譯了。這裡我們需要關注一下.classpath

這個檔案。

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->.../WEB-INF/src的output
folder不要預設,編輯讓它指向../WEB-INF/classes,然後重新點選build工程即可自動
編譯。我的問題出在這裡,我把這個編譯目錄給誤刪了。

9,看工程下面是否缺少了work目錄,由於CVS控制時不把work加入版本,所以checkout後
沒有這個目錄,要手工加上有的工程就能自動編譯了。

    整合開發工具不自動編譯,主要有以下幾種表現:最明顯的,增加的程式碼沒有任何效
果;還有就是debug時,斷點亂跳,可以借用下面這位網友的描述:

以前用的是Myeclipse8.6 + tomcat
debug的時候一點問題沒有,很好用
現在時Myeclipse8.6 + resin
debug的時候就有問題了
1:比如執行到,String ss="123";
右上方的引數沒用出來,而是往下在執行5,6行,才出現ss的引數值,反正都是延遲顯示
2:有的程式碼它沒點到當行,而是直接跳過去,雖然執行了,,,
3:最鬱悶的是if else 他都往裡面跑,雖然不該執行的他沒執行,當看著不爽啊,第一
次遇見以為是個錯誤,調了大半天,是和resin有關嗎?還是我那個地方設定有問題啊?

    其實上面這位網友遇到的問題,就是不能自動編譯的問題,可以參考上面的9個步
驟,一個一個的嘗試。