日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

myeclipse和maven的clean和build

發布時間:2023/12/9 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 myeclipse和maven的clean和build 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉:

詳解myeclipse和maven的clean和build

2018年04月20日 11:33:34 群星墜 閱讀數:3529 版權聲明:本文為博主原創文章,未經博主允許不得轉載。 https://blog.csdn.net/qq_35603331/article/details/80002723

MyEclipse是一個被廣為使用的軟件,但是很多人用了很久,對它如何編譯,執行一個java工程卻沒有一個清楚的認識。比如,

  • clean和build到底有什么區別?
  • 直接run主類之前用不用clean一下?
  • 直接clean和maven clean是不是一樣的?
  • 直接build和maven build,結果相同嗎?
  • 另外,在遇到最棘手的問題:

    錯誤: 找不到或無法加載主類

    的時候,很容易陷入懵逼狀態。下面我結合我的一些實驗,簡單介紹下myeclipse的,clean,build,run,以及他們和maven clean,maven build的區別。

    一.myeclipse的clean,build和run


    首先,我們使用一個普通的maven工程作為例子。


  • clean。作用很簡單,清空輸出目錄下的所有文件,每一個source folder都有一個自己的輸出目錄,也就是output
    folder。這個目錄可以在build path里進行設置,一個標準maven工程中,src/main/java通常的輸出目錄是
    工程名/target/classes
  • build。build的作用則是編譯,實際上就是把source fold下的所有文件轉移到相應的output folder, .java文件先編譯再轉移,其他文件直接轉移。在maven工程中,這個build其實相當于一次myeclipse自身的編譯,最后再利用maven提取一下資源文件。
  • 其實兩者區別很明顯了,很多時候我們分不清他和clean的區別,是因為myeclipse提供了很多便利的機制。clean的提示框如下:

    看到紅框了嗎,如果打勾,表示clean完畢之后立刻進行一次build,那看起來就和build沒什么區別了。如果你把勾去掉,clean后去查看輸出目錄,就會發現輸出目錄被清空了。這里就不進行截圖了。
    4.run。簡單來說就是找一個main方法,直接右鍵,run java application,相信大家都用過。這個run,實際上就是去
    工程名/target/classes
    這個目錄下去找class文件執行而已(如果不是maven工程,可能去工程名/classes下找),那么沒有文件怎么辦呢?如果你剛剛完成了clean,但是沒有build,那么它會自動build一次。此外都會直接去找文件執行,如果找不到咋辦?
  • 錯誤: 找不到或無法加載主類

    二.maven的clean和build

  • maven clean
    默認情況下直接刪除target文件夾。簡單直接。
  • maven build
    按照maven規則進行編譯,和myeclipse無關,也就是說,不管你是不是設置了source folder,maven都按照他那一套進行編譯,具體規則大家可以找maven文章深入學習。
  • maven的一些規則。maven的默認輸出文件夾也是
    工程名/target/classes,無論源代碼還是資源文件,根目錄都是這個文件夾,打包其實就相當于把這個文件夾打包而已。
  • 三.總結


    無論如何,build之前都應該clean,因為如果直接build,同名文件直接覆蓋,非同名文件會保留,這有可能給程序帶來未知的問題。如果myeclipse的輸出文件夾設置合理,那么和maven build可能也不會出現什么不同。但是,在使用maven的情況下,直接使用myeclipse內置的build功能仍然可能會和maven build產生不完全一致的效果,比如maven可能會忽視src/main/java文件夾內的資源文件,而myeclipse會保留。
    嚴格來說,myeclipse內置的編譯功能,更多的是提供代碼提示和檢查功能,即使你完全不使用它,maven也可以正確編譯。(當然這樣你就享受不到代碼提示之類的的了)。
    但可以確定的是,使用maven clean build總是可以生成最精確的結果,所以推薦先maven clean build后再運行程序。

    轉載于:https://www.cnblogs.com/libin6505/p/10395333.html

    總結

    以上是生活随笔為你收集整理的myeclipse和maven的clean和build的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。