国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

[轉(zhuǎn)]maven2中snapshot快照庫和release發(fā)布庫的應(yīng)用

2019-11-14 14:57:33
字體:
供稿:網(wǎng)友

[轉(zhuǎn)載聲明] 轉(zhuǎn)載時必須標(biāo)注:本文來源于鐵木箱子的博客http://www.mzone.cc 
[原文地址] 原文永久地址是:http://www.mzone.cc/article/279.html

在之前的文章中介紹了maven2中snapshot快照庫和release發(fā)布庫的區(qū)別和作用,我今天這里要介紹的是如何在項目中應(yīng)用snapshot和release庫,應(yīng)用snapshot和release庫達(dá)到不同環(huán)境下發(fā)布不同的版本的目的,首先看一個pom文件的定義:

<PRoject>    <modelVersion>4.0.0</modelVersion>    <groupId>cc.mzone</groupId>    <artifactId>myjar</artifactId>    <version>${project.release.version}</version>    <packaging>jar</packaging>     <distributionManagement>        <repository>        <id>mzone-release</id>        <url>http://192.168.1.88/nexus/content/repositories/mzone-release</url>        </repository>        <snapshotRepository>        <id>mzone-snapshot</id>        <url>http://192.168.1.88/nexus/content/repositories/mzone-snapshot</url>        </snapshotRepository>    </distributionManagement>     <properties>        <project.release.version>0.1-SNAPSHOT</project.release.version>    </properties>     <profiles>        <profile>            <id>product</id>        <properties>             <project.release.version>0.1</project.release.version>        </properties>        </profile>    </profiles></project>

      首先我們看到pom文件中version的定義是采用占位符的形式,這樣的好處是可以根據(jù)不同的profile來替換版本信息,比如maven默認(rèn)是使用0.1-SNAPSHOT作為該模塊的版本。

1、如果在發(fā)布時使用mvn deploy -P product的命令,那么會自動使用0.1作為發(fā)布版本,那么根據(jù)maven處理snapshot和release的規(guī)則,由于版本號后不帶-SNAPSHOT故當(dāng)成是正式發(fā)布版本,會被發(fā)布到release倉庫;

2、如果發(fā)布時使用mvn deploy命令,那么就會使用默認(rèn)的版本號0.1-SNAPSHOT,此時maven會認(rèn)為是快照版本,會自動發(fā)布到快照版本庫。

      在distributionManagement段中配置的是snapshot快照庫和release發(fā)布庫的地址,我這里是采用nexus作為鏡像服務(wù)器。對于版本庫主要是id和url的配置,配置完成后就可以通過mvn deploy進(jìn)行發(fā)布了,當(dāng)然了,如果你的鏡像服務(wù)器需要用戶名和密碼,那么還需要在maven的settings.xml文件中做如下配置:

<servers>    <server>        <id>mzone-release</id>        <username>deployment</username>        <passWord>deployment</password>    </server>    <server>        <id>mzone-snapshot</id>        <username>deployment</username>        <password>deployment</password>    </server></servers>

      注意這里配置的server的id必須和pom文件中的distributionManagement對應(yīng)倉庫的id保持一致,maven在處理發(fā)布時會根據(jù)id查找用戶名稱和密碼進(jìn)行登錄和文件的上傳發(fā)布。

      我們這里通過profile的定義就可以在發(fā)布靈活切換snapshot快照版本和release正式版本了,在被依賴的組件中也可以使用profile來定義在開發(fā)階段使用快照庫,在發(fā)布階段使用正式庫的功能,只需要在不同的profile中覆蓋默認(rèn)的properties屬性值即可。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 蚌埠市| 甘孜| 永济市| 洞口县| 青海省| 鹤壁市| 西华县| 洱源县| 大丰市| 南丹县| 古交市| 吉安市| 驻马店市| 南安市| 龙游县| 莱西市| 建德市| 宜春市| 榆中县| 韶关市| 苍南县| 玉田县| 菏泽市| 温宿县| 肇州县| 梅州市| 吉林省| 都安| 仁怀市| 巴东县| 天长市| 岐山县| 县级市| 邵武市| 扎赉特旗| 惠水县| 和政县| 嘉峪关市| 雷州市| 扎兰屯市| 凉山|