大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專(zhuān)注Java教育14年 全國(guó)咨詢(xún)/投訴熱線(xiàn):400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁(yè) hot資訊 Maven配置文件指南

Maven配置文件指南

更新時(shí)間:2022-04-20 11:09:47 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽2109次

1.概述

Maven配置文件可用于創(chuàng)建自定義構(gòu)建配置,例如針對(duì)測(cè)試粒度級(jí)別或特定部署環(huán)境。

在本教程中,我們將學(xué)習(xí)如何使用 Maven 配置文件。

2. 一個(gè)基本的例子

通常,當(dāng)我們運(yùn)行mvn package 時(shí),也會(huì)執(zhí)行Maven單元測(cè)試。但是如果我們想快速打包工件并運(yùn)行它來(lái)查看它是否有效呢?

首先,我們將創(chuàng)建一個(gè)將maven.test.skip屬性設(shè)置為true 的無(wú)測(cè)試配置文件:

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

接下來(lái),我們將通過(guò)運(yùn)行mvn package -Pno-tests命令來(lái)執(zhí)行配置文件。現(xiàn)在已創(chuàng)建工件并跳過(guò)測(cè)試。在這種情況下,mvn package -Dmaven.test.skip命令會(huì)更容易。

然而,這只是對(duì) Maven 配置文件的介紹。讓我們看一些更復(fù)雜的設(shè)置。

3. 聲明配置文件

在上一節(jié)中,我們看到了如何創(chuàng)建一個(gè)配置文件。我們可以通過(guò)為它們提供唯一的 ID 來(lái)配置任意數(shù)量的配置文件。

假設(shè)我們想創(chuàng)建一個(gè)只運(yùn)行我們的集成測(cè)試的配置文件,另一個(gè)用于一組突變測(cè)試。

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

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

在每個(gè)配置文件元素中,我們可以配置許多元素,例如依賴(lài)項(xiàng)、插件、資源、最終名稱(chēng)。

因此,對(duì)于上面的示例,我們可以分別為integration-tests和mutation-tests添加插件及其依賴(lài)項(xiàng)。

將測(cè)試分成配置文件可以使默認(rèn)構(gòu)建更快,因?yàn)樗魂P(guān)注單元測(cè)試。

簡(jiǎn)介范圍:

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

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

項(xiàng)目特定的配置文件進(jìn)入項(xiàng)目的pom.xml 文件

用戶(hù)特定的配置文件進(jìn)入用戶(hù)的settings.xml文件

全局配置文件進(jìn)入全局settings.xml文件

請(qǐng)注意,Maven 2 確實(shí)支持第四個(gè)位置,但在 Maven 3 中已刪除。

我們盡可能在pom.xml中配置配置文件。原因是我們希望在我們的開(kāi)發(fā)機(jī)器和構(gòu)建機(jī)器上都使用配置文件。使用settings.xml更加困難且容易出錯(cuò),因?yàn)槲覀儽仨氉约涸跇?gòu)建環(huán)境中分發(fā)它。

4. 激活配置文件

創(chuàng)建一個(gè)或多個(gè)配置文件后,我們可以開(kāi)始使用它們,或者換句話(huà)說(shuō),激活它們。

(1)查看哪些配置文件處于活動(dòng)狀態(tài)

讓我們使用help:active-profiles目標(biāo)來(lái)查看哪些配置文件在我們的默認(rèn)構(gòu)建中處于活動(dòng)狀態(tài):

mvn help:active-profiles

實(shí)際上,由于我們還沒(méi)有激活任何東西,我們得到:

The following profiles are active:

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

<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>

現(xiàn)在,讓我們開(kāi)始使用它們吧!我們將研究幾種不同的方式。

(2)使用-P

實(shí)際上,我們?cè)谝婚_(kāi)始就已經(jīng)看到了一種方法,那就是我們可以使用-P參數(shù)激活配置文件。

因此,讓我們從啟用集成測(cè)試配置文件開(kāi)始:

mvn package -P integration-tests

如果我們使用maven-help-plugin或mvn help:active-profiles -P integration-tests命令驗(yàn)證活動(dòng)配置文件,我們將得到以下結(jié)果:

The following profiles are active:
 - integration-tests

如果我們想同時(shí)激活多個(gè)配置文件,我們使用逗號(hào)分隔的配置文件列表:

mvn package -P integration-tests,mutation-tests

(3)默認(rèn)激活

如果我們總是想執(zhí)行一個(gè)配置文件,我們可以默認(rèn)激活一個(gè):

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

然后,我們可以在不指定配置文件的情況下運(yùn)行mvn package,我們可以驗(yàn)證集成測(cè)試配置文件是否處于活動(dòng)狀態(tài)。

但是,如果我們運(yùn)行 Maven 命令并啟用另一個(gè)配置文件,則會(huì)跳過(guò)activeByDefault配置文件。因此,當(dāng)我們運(yùn)行mvn package -P mutation-tests時(shí),只有mutation-tests配置文件處于活動(dòng)狀態(tài)。

當(dāng)我們以其他方式激活時(shí),也會(huì)跳過(guò)activeByDefault配置文件,我們將在下一節(jié)中看到。

(4)基于屬性

我們可以在命令行上激活配置文件。但是,有時(shí)如果它們自動(dòng)激活會(huì)更方便。例如,我們可以基于-D系統(tǒng)屬性:

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

我們現(xiàn)在使用mvn package -Denvironment命令激活配置文件。

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

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

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

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

我們現(xiàn)在可以使用mvn package -Denvironment=test 運(yùn)行配置文件。

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

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

(5)基于JDK版本

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

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

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

(6)基于操作系統(tǒng)

或者,我們可以根據(jù)一些操作系統(tǒng)信息激活配置文件。

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

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)基于文件

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

因此,讓我們創(chuàng)建一個(gè)僅在testreport.html尚不存在時(shí)執(zhí)行的測(cè)試配置文件:

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

5.停用個(gè)人資料

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

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

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

以上就是關(guān)于“Maven配置文件指南”介紹,大家如果對(duì)此比較感興趣,想了解更多相關(guān)知識(shí),不妨來(lái)關(guān)注一下動(dòng)力節(jié)點(diǎn)的Maven教程,里面的教程內(nèi)容細(xì)致全面,通俗易懂,很適合沒(méi)有基礎(chǔ)的小伙伴學(xué)習(xí),希望對(duì)大家能夠有所幫助。

提交申請(qǐng)后,顧問(wèn)老師會(huì)電話(huà)與您溝通安排學(xué)習(xí)

  • 全國(guó)校區(qū) 2025-04-24 搶座中
  • 全國(guó)校區(qū) 2025-05-15 搶座中
  • 全國(guó)校區(qū) 2025-06-05 搶座中
  • 全國(guó)校區(qū) 2025-06-26 搶座中
免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: aa毛片免费全部播放完整 | 欧美日韩国产成人综合在线影院 | 国产一级毛片欧美视频 | 国产精品午夜波多野结衣性色 | 欧美一级大片在线观看 | 国产综合色在线视频播放线视 | 日本特黄一级午夜剧场毛片 | 欧美爱爱爱爱免费视频 | 欧美日韩片 | 国产日韩一区二区三区在线播放 | 日日爽爽| 高清毛片在线看高清 | 2017天天干天天射 | 国产成人综合在线视频 | 91热久久免费频精品黑人99 | 亚洲欧美精品成人久久91 | 九九看片 | 香蕉视频在线免费 | avav在线精品 | 午夜免费播放观看在线视频 | 亚洲国产99在线精品一区69堂 | 久久中文字幕免费 | 国产免费观看a大片的网站 国产免费精彩视频 | 久久综合社区 | 香蕉久久精品 | 大咪咪在线 | 奇米影视7777久久精品人人爽 | 四虎在线播放 | 国产首页精品 | 亚洲精品123区 | 色一情一欲一爱一乱 | 欧美精品亚洲精品日韩 | 国产特级毛片aaaaaa高清 | 精品视频免费播放 | 欧美 亚洲 另类 热图 | 美国一级毛片片aa久久综合 | 国产福利免费观看 | 亚洲精品欧美日本中文字幕 | 伊人影院综合 | 中文字幕在线精品不卡 | 国产在线精品一区二区三区 |