欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

IDEA中Maven的一些常用操作指南

 更新時間:2024年06月07日 09:43:56   作者:Lvan的前端筆記  
intellij idea是一款很流行好用的集成開發(fā)環(huán)境軟件,maven是使用很廣泛的構(gòu)建工具,java開發(fā)者日常少不了與這兩種工具打交道,下面這篇文章主要給大家介紹了關(guān)于IDEA中Maven的一些常用操作指南,需要的朋友可以參考下

背景

當(dāng)我們使用 IDEA 開發(fā)基于 Maven 的項目的時候,會發(fā)現(xiàn)右側(cè)有一個 Maven,點開會有一些菜單,今天來介紹一下這些菜單的意思。

1、Reload All Maven Projects:

場景: 當(dāng)你對項目的pom.xml文件進行了更改,比如添加、刪除或修改了依賴,或者進行了其他Maven配置的更改時,可能需要重新加載項目以應(yīng)用這些變更。

用途: 使用這個功能可以重新導(dǎo)入和解析Maven項目,確保項目的配置和依賴被正確加載。這對于確保項目與pom.xml文件的同步非常重要。

2、Generate Sources and Update Folders For All Projects:

  • 場景: 當(dāng)項目中有生成的源代碼(如通過Annotation Processors生成的代碼)或者在IDE中進行了一些更改需要同步到實際文件系統(tǒng)時,可以使用這個功能。
  • 用途: 生成源代碼并更新文件夾是為了確保在IDE中進行的任何更改都被同步到實際的源代碼文件中。這對于確保構(gòu)建過程中包含最新的生成代碼非常重要。

舉例說明:

當(dāng)使用Annotation Processors或其他自動生成代碼的工具時,可能會生成一些額外的源代碼,并且這些生成的代碼不直接存儲在源代碼目錄中,而是在編譯過程中生成到特定的目錄中。

舉個例子,假設(shè)你使用了Lombok庫,它是一個Java庫,可以通過注解來簡化Java代碼的編寫。Lombok在編譯時會生成一些getter和setter方法,以及其他一些常見的方法。這些生成的代碼默認(rèn)情況下會放在編譯輸出目錄(例如target/classes)的某個位置。

如果你在IDE中使用Lombok,并在代碼中使用了Lombok的注解,但在實際源代碼中看不到生成的方法,那么可能是因為IDE沒有同步生成的代碼到源代碼目錄。

在這種情況下,你可以使用"Generate Sources and Update Folders For All Projects"功能來強制IDE將生成的代碼同步到源代碼目錄。這樣,你就可以在IDE中看到并編輯由Lombok生成的代碼,從而更容易理解和調(diào)試你的代碼。

總體而言,這個功能通常在你使用一些自動生成代碼的工具,并且想要在IDE中看到或編輯這些生成的代碼時非常有用。

生成的源代碼(比如通過Annotation Processors或Lombok生成的代碼)可能會存儲在編譯輸出目錄(例如,target/generated-sources)的子目錄中。這些生成的源代碼不會直接放在源代碼目錄中。
因此,在使用"Generate Sources and Update Folders For All Projects"功能時,它會負(fù)責(zé)將這些生成的源代碼同步到源代碼目錄,使得在IDE中可以看到并編輯這些生成的代碼。這樣,你就能夠在IDE中更方便地查看和管理由工具生成的代碼,而不必直接查看編譯輸出目錄。

3、Download Sources and/or Documentation:

  • 場景: 當(dāng)你依賴的庫(JAR文件)沒有包含源代碼或文檔,并且你希望在IDE中查看這些源代碼或文檔時,可以使用這個功能。
  • 用途: 下載源代碼和/或文檔是為了在IDE中查看和調(diào)試庫的源代碼,或者閱讀其文檔。這對于理解庫的內(nèi)部實現(xiàn)或使用庫的最佳實踐非常有幫助。

4、Add Maven Projects

添加 Maven 項目,點擊后選擇文件夾

5、Run Maven Build

執(zhí)行選中的命令

當(dāng)然你也可以雙擊命令直接執(zhí)行

6、Execute Maven Goal

執(zhí)行 mvn 命令或自定義的命令,點擊后有如下效果

7、Toggle Offline Mode

切換離線模式,即關(guān)閉和遠程倉庫的鏈接,即版本管理工具不能提交到遠程

8、Toggle ‘Skip Tests’ Mode

跳過 maven 生命周期的測試環(huán)節(jié)

9、Collapse All

收起下面展開的樹形

10、Analyze Dependencies…

11、Show Diagram…

12、Settings…

13、Profiles

Native Maven插件是一個用于構(gòu)建本地(native)項目的Maven插件,通常用于構(gòu)建使用C、C++等語言編寫的本地應(yīng)用程序。

native Profile:

  • 當(dāng)激活了native Profile 時,可能會觸發(fā)使用 Native Maven 插件構(gòu)建本地(native)項目的配置。
  • 這個Profile通常包括一些特定于本地構(gòu)建的配置,比如本地編譯器的設(shè)置、本地庫的依賴等。

nativeTest Profile:

  • 當(dāng)激活了nativeTest Profile 時,可能會觸發(fā)一些與本地測試相關(guān)的配置。
  • 這個Profile可能包括本地測試所需的特殊配置,確保測試可以正確地運行在本地構(gòu)建的環(huán)境中。

一般用不到

14、Lifecycle

這個一個生命周期,比如執(zhí)行 mvn test 會執(zhí)行 mvn compile,執(zhí)行 mvn package 會執(zhí)行 mvn compile 和 mvn test

clean 階段:

  • 目的: 清理項目,刪除之前構(gòu)建生成的文件。
  • 命令: mvn clean

validate 階段:

  • 目的: 驗證項目是否正確且所有必要的信息可用。
  • 命令: mvn validate

compile 階段:

  • 目的: 編譯項目的源代碼。
  • 命令: mvn compile

test 階段:

  • 目的: 運行項目的單元測試。
  • 命令: mvn test

package 階段:

  • 目的: 將編譯后的代碼打包成可發(fā)布的格式,例如 JAR 或 WAR。
  • 命令: mvn package

install 階段:

  • 目的: 將項目打包并安裝到本地 Maven 倉庫,使其可以被其他項目引用。
  • 命令: mvn install

deploy 階段:

  • 目的: 將項目的構(gòu)建結(jié)果復(fù)制到遠程 Maven 倉庫,以便其他開發(fā)者或項目可以訪問。
  • 命令: mvn deploy

15、Plugins

這里就是一個一個具體的插件命令了。

16、Dependencies

在IntelliJ IDEA中,External Libraries和Dependencies兩個部分都涉及到項目的依賴,但它們有一些區(qū)別。

簡而言之

External Libraries 關(guān)注項目運行時所使用的庫

而 Dependencies 關(guān)注項目構(gòu)建時所需的依賴項。

在 Maven 項目中,Dependencies 中的內(nèi)容通常會包含在 External Libraries 中

總結(jié)

最常用的是1和14,其他了解一下就行

到此這篇關(guān)于IDEA中Maven的一些常用操作的文章就介紹到這了,更多相關(guān)IDEA Maven常用操作內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 淺談Java編程之if-else的優(yōu)化技巧總結(jié)

    淺談Java編程之if-else的優(yōu)化技巧總結(jié)

    說實話,其實我很討厭在代碼里大量使用if-else,一是因為該類代碼執(zhí)行方式屬于面向過程的,二嘛,則是會顯得代碼過于冗余.這篇筆記,主要記錄一些自己在工作實踐當(dāng)中針對if-else的優(yōu)化心得,將會不定期地長期更新,需要的朋友可以參考下
    2021-06-06
  • 解決SpringBoot下Redis序列化亂碼的問題

    解決SpringBoot下Redis序列化亂碼的問題

    這篇文章主要介紹了解決SpringBoot下Redis序列化亂碼的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • 如何解決java.util.zip.ZipFile解壓后被java占用問題

    如何解決java.util.zip.ZipFile解壓后被java占用問題

    這篇文章主要介紹了如何解決java.util.zip.ZipFile解壓后被java占用問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • SpringBoot MainApplication類文件的位置詳解

    SpringBoot MainApplication類文件的位置詳解

    這篇文章主要介紹了SpringBoot MainApplication類文件的位置詳解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • Springboot詳解實現(xiàn)食品倉庫管理系統(tǒng)流程

    Springboot詳解實現(xiàn)食品倉庫管理系統(tǒng)流程

    這是一個使用Springboot開發(fā)的食品倉庫管理系統(tǒng),是為商家提供商品貨物進銷存的信息化管理系統(tǒng),具有一個倉庫管理系統(tǒng)該有的所有功能,感興趣的朋友快來看看吧
    2022-06-06
  • springboot項目快速搭建的方法步驟

    springboot項目快速搭建的方法步驟

    這篇文章主要介紹了springboot項目快速搭建的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • 詳解SpringBoot中自定義和配置攔截器的方法

    詳解SpringBoot中自定義和配置攔截器的方法

    今天這篇文章來介紹一下攔截器在SpringBoot中的如何自定義及如何配置的,攔截器的具體作用和應(yīng)用場景,感興趣的小伙伴可以了解一下
    2022-05-05
  • Mybatis?如何傳入字符串參數(shù),分割并遍歷

    Mybatis?如何傳入字符串參數(shù),分割并遍歷

    這篇文章主要介紹了Mybatis?如何傳入字符串參數(shù),分割并遍歷,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • spring boot整合quartz實現(xiàn)多個定時任務(wù)的方法

    spring boot整合quartz實現(xiàn)多個定時任務(wù)的方法

    這篇文章主要介紹了spring boot整合quartz實現(xiàn)多個定時任務(wù)的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01
  • Java面試重點中的重點之Elasticsearch核心原理

    Java面試重點中的重點之Elasticsearch核心原理

    ElasticSearch是一個基于Lucene的搜索引擎,是用Java語言開發(fā)的,能夠達到實時搜索,穩(wěn)定,可靠,快速,安裝使用方便,作為Apache許可條款下的開放源碼發(fā)布,是一種流行的企業(yè)級搜索引擎,是最受歡迎的企業(yè)搜索引擎
    2022-01-01

最新評論