中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

maven-profile

發布時間:2020-07-29 17:02:33 來源:網絡 閱讀:531 作者:乾坤刀 欄目:軟件技術

profile的目的是什么?
在我們實際的開發過程中會有dev、test、product等環境,或則不同的操作OS。而它們可能需要的配置參數是不一樣的,比如:數據庫。通常的做法就是在切換環境的同時修改我們的代碼或則同一個properties文件。基于此,maven2.0給開發提供了一個更好的選擇,profiles就是用于不同環境構建不同的project.

profile可以配置的地方有哪些?

  • 項目中的pom.xml
  • 系統用戶中的maven setting:%USER_HOME%/.m2/settings.xml
  • 全局的maven setting:(${maven.home}/conf/settings.xml)
  • 位于project basedir 中的profile descriptor:(profiles.xml)

profile配置不同的地方的作用是什么?
本質上分為兩類:一種是maven setting,作用于所有的project,通常是將不影響project build的配置放在此類文件中。如:<repositories>、<pluginRepositories>、<properties>(可以通過通配符被pom中properties屬性引用)。另一種則是pom.xml,作用于單個project或其子module,通常是將影響project build的參數配置在pom.xml中profile中,如:<resources>、<properites>。

profile的激活方式?

  • mvn 命令行 -P,如:
    mvn groupId:artifactId:goal -P profile-1,profile-2
  • settings.xml中的<activeProfiles>標簽,如:
    
    <settings>
    ...
    <activeProfiles>
    <activeProfile>profile-1</activeProfile>
    </activeProfiles>
    ...
    </settings>
* 根據JDK環境(自動檢測),如:

<profiles>
<profile>
<activation>
<jdk>1.4</jdk>
</activation>
...
</profile>
</profiles>

* 根據OS,如:

<profiles>
<profile>
<activation>
<os>
<name>Windows XP</name>
<family>Windows</family>
<arch>x86</arch>
<version>5.1.2600</version>
</os>
</activation>
...
</profile>
</profiles>

* 根據<activation>中的<property>,并同時來命令行中指定參數:mvn groupId:artifactId:goal -Ddebug=false。如:

<profiles>
<profile>
<activation>
<property>
<name>debug</name>
</property>
</activation>
...
</profile>
</profiles>

* 根據<activation>中的<activeByDefault>自動激活,如:

<profiles>
<profile>
<id>profile-1</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
...
</profile>
</profiles>

* 根據<activation>中的<file>,<exists>和<missing>,如:

<profiles>
<profile>
<activation>
<file>
<missing>target/generated-sources/axistools/wsdl2java/org/apache/maven</missing>
</file>
</activation>
...
</profile>
</profiles>



**pom.xml中的profile能修改哪些內容?**

* <repositories>
* <pluginRepositories>
* <dependencies>
* <plugins>
* <properties>(not actually available in the main POM, but used behind the scenes)
* <modules>
* <reporting>
* <dependencyManagement>
* <distributionManagement>
* a subset of the <build> element, which consists of:
      * <defaultGoal>
      * <resources>
      * <testResources>
      * <finalName>

**如何查看哪些profiles是生效的?**
 mvn help:active-profiles
 mvn help:active-profiles -P appserverConfig-dev
 mvn help:active-profiles -Denv=dev

參考文檔:http://maven.apache.org/guides/introduction/introduction-to-profiles.html
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

石渠县| 长武县| 崇礼县| 肇东市| 正蓝旗| 兴仁县| 方正县| 郴州市| 靖州| 安义县| 台东市| 崇明县| 中山市| 皮山县| 呼和浩特市| 河北省| 玉龙| 襄汾县| 瑞安市| 巴彦县| 宝清县| 太湖县| 南宫市| 镇安县| 波密县| 蕲春县| 方正县| 连南| 延川县| 合山市| 文登市| 房山区| 芒康县| 姜堰市| 犍为县| 望城县| 肥乡县| 洪湖市| 普兰店市| 湟中县| 绍兴市|