黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 hot資訊 Maven配置文件指南

Maven配置文件指南

更新時間:2022-04-20 11:09:47 來源:動力節點 瀏覽2130次

1.概述

Maven配置文件可用于創建自定義構建配置,例如針對測試粒度級別或特定部署環境。

在本教程中,我們將學習如何使用 Maven 配置文件。

2. 一個基本的例子

通常,當我們運行mvn package 時,也會執行Maven單元測試。但是如果我們想快速打包工件并運行它來查看它是否有效呢?

首先,我們將創建一個將maven.test.skip屬性設置為true 的無測試配置文件:

<profile>
    <id>no-tests</id>
    <properties>
        <maven.test.skip>true</maven.test.skip>
    </properties>
</profile>

接下來,我們將通過運行mvn package -Pno-tests命令來執行配置文件。現在已創建工件并跳過測試。在這種情況下,mvn package -Dmaven.test.skip命令會更容易。

然而,這只是對 Maven 配置文件的介紹。讓我們看一些更復雜的設置。

3. 聲明配置文件

在上一節中,我們看到了如何創建一個配置文件。我們可以通過為它們提供唯一的 ID 來配置任意數量的配置文件。

假設我們想創建一個只運行我們的集成測試的配置文件,另一個用于一組突變測試。

我們將首先在pom.xml文件中為每個文件指定一個 id :

<profiles>
    <profile>
        <id>integration-tests</id>
    </profile>
    <profile>
        <id>mutation-tests</id>
    </profile>
</profiles>

在每個配置文件元素中,我們可以配置許多元素,例如依賴項、插件、資源、最終名稱。

因此,對于上面的示例,我們可以分別為integration-tests和mutation-tests添加插件及其依賴項。

將測試分成配置文件可以使默認構建更快,因為它只關注單元測試。

簡介范圍:

現在,我們只是將這些配置文件放在我們的pom.xml文件中,該文件僅為我們的項目聲明它們。

但是,在 Maven 3 中,我們實際上可以將配置文件添加到三個位置中的任何一個:

項目特定的配置文件進入項目的pom.xml 文件

用戶特定的配置文件進入用戶的settings.xml文件

全局配置文件進入全局settings.xml文件

請注意,Maven 2 確實支持第四個位置,但在 Maven 3 中已刪除。

我們盡可能在pom.xml中配置配置文件。原因是我們希望在我們的開發機器和構建機器上都使用配置文件。使用settings.xml更加困難且容易出錯,因為我們必須自己在構建環境中分發它。

4. 激活配置文件

創建一個或多個配置文件后,我們可以開始使用它們,或者換句話說,激活它們。

(1)查看哪些配置文件處于活動狀態

讓我們使用help:active-profiles目標來查看哪些配置文件在我們的默認構建中處于活動狀態:

mvn help:active-profiles

實際上,由于我們還沒有激活任何東西,我們得到:

The following profiles are active:

我們馬上就會激活它們。但很快,另一種查看激活內容的方法是將maven-help-plugin包含在我們的pom.xml 中,并將 active-profiles目標與 編譯 階段聯系起來:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-help-plugin</artifactId>
            <version>3.2.0</version>
            <executions>
                <execution>
                    <id>show-profiles</id>
                    <phase>compile</phase>
                    <goals>
                        <goal>active-profiles</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

現在,讓我們開始使用它們吧!我們將研究幾種不同的方式。

(2)使用-P

實際上,我們在一開始就已經看到了一種方法,那就是我們可以使用-P參數激活配置文件。

因此,讓我們從啟用集成測試配置文件開始:

mvn package -P integration-tests

如果我們使用maven-help-plugin或mvn help:active-profiles -P integration-tests命令驗證活動配置文件,我們將得到以下結果:

The following profiles are active:
 - integration-tests

如果我們想同時激活多個配置文件,我們使用逗號分隔的配置文件列表:

mvn package -P integration-tests,mutation-tests

(3)默認激活

如果我們總是想執行一個配置文件,我們可以默認激活一個:

<profile>
    <id>integration-tests</id>
    <activation>
        <activeByDefault>true</activeByDefault>
    </activation>
</profile>

然后,我們可以在不指定配置文件的情況下運行mvn package,我們可以驗證集成測試配置文件是否處于活動狀態。

但是,如果我們運行 Maven 命令并啟用另一個配置文件,則會跳過activeByDefault配置文件。因此,當我們運行mvn package -P mutation-tests時,只有mutation-tests配置文件處于活動狀態。

當我們以其他方式激活時,也會跳過activeByDefault配置文件,我們將在下一節中看到。

(4)基于屬性

我們可以在命令行上激活配置文件。但是,有時如果它們自動激活會更方便。例如,我們可以基于-D系統屬性:

<profile>
    <id>active-on-property-environment</id>
    <activation>
        <property>
            <name>environment</name>
        </property>
    </activation>
</profile>

我們現在使用mvn package -Denvironment命令激活配置文件。

如果屬性不存在,也可以激活配置文件:

<property>
    <name>!environment</name>
</property>

或者,如果屬性具有特定值,我們可以激活配置文件:

<property>
    <name>environment</name>
    <value>test</value>
</property>

我們現在可以使用mvn package -Denvironment=test 運行配置文件。

最后,如果屬性的值不是指定值,我們可以激活配置文件:

<property>
    <name>environment</name>
    <value>!test</value>
</property>

(5)基于JDK版本

另一種選擇是啟用基于機器上運行的 JDK 的配置文件。在這種情況下,如果 JDK 版本以 11 開頭,我們希望啟用配置文件:

<profile>
    <id>active-on-jdk-11</id>
    <activation>
        <jdk>11</jdk>
    </activation>
</profile>

我們還可以使用 JDK 版本的范圍,如Maven版本范圍語法中所述。

(6)基于操作系統

或者,我們可以根據一些操作系統信息激活配置文件。

如果我們不確定,我們可以先使用mvn enforcer:display-info命令,它會在我的機器上提供以下輸出:

Maven Version: 3.5.4
JDK Version: 11.0.2 normalized as: 11.0.2
OS Info: Arch: amd64 Family: windows Name: windows 10 Version: 10.0

之后,我們可以配置僅在 Windows 10 上激活的配置文件:

<profile>
    <id>active-on-windows-10</id>
    <activation>
        <os>
            <name>windows 10</name>
            <family>Windows</family>
            <arch>amd64</arch>
            <version>10.0</version>
        </os>
    </activation>
</profile>

(7)基于文件

如果文件存在或丟失,另一種選擇是運行配置文件。

因此,讓我們創建一個僅在testreport.html尚不存在時執行的測試配置文件:

<activation>
    <file>
        <missing>target/testreport.html</missing>
    </file>
</activation>

5.停用個人資料

我們已經看到了許多激活配置文件的方法,但有時我們也需要禁用一種。

要禁用配置文件,我們可以使用“!” 或者 '-'。

因此,要禁用active-on-jdk-11配置文件,我們執行mvn compile -P -active-on-jdk-11命令。

以上就是關于“Maven配置文件指南”介紹,大家如果對此比較感興趣,想了解更多相關知識,不妨來關注一下動力節點的Maven教程,里面的教程內容細致全面,通俗易懂,很適合沒有基礎的小伙伴學習,希望對大家能夠有所幫助。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 成人美女隐私免费 | 成人免费视频一区二区三区 | 亚洲成a人片在线观看播放 亚洲成精品动漫久久精久 亚洲大尺度 | 男女毛片| 黄色片黄色片黄色片黄色片黄色片 | 久久国产精品高清一区二区三区 | 欧美在线区 | 亚洲另类图 | 91人前露出精品国产 | 日韩一区国产一级 | 欧美一级v片 | 黄色一级视频在线观看 | 激情综合网五月 | 视频成人永久免费看 | 曰本三级香港三级三级人 | 午夜香蕉视频 | 日日碰狠狠添天天爽对白 | 一a级片 | 2015小明永久领域日韩 | avtt亚洲一区中文字幕 | 污视频免费在线播放 | 日韩成人一区ftp在线播放 | 日日搞夜夜操 | 久久精品国产精品亚洲艾 | 日本福利片国产午夜久久 | 久久国产精品亚洲va麻豆 | 在线中文字幕精品第5页 | 爱啪啪网站 | 国产激情视频在线 | 欧美日韩国产不卡在线观看 | 国产麻豆一级在线观看 | 美女视频导航 | 欧美综合色另类图片区 | 一区小说二区另类小说三区图 | 久草午夜 | 一菊综合网成人综合网 | a级无毛片| 欧美日韩在线一区 | 午夜影院操 | 免费无遮挡嘿嘿嘿视频动态 | 最新大黄网站免费 |