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

Maven教程
Maven常用命令應(yīng)用
Maven修改倉庫地址
使用Eclipse創(chuàng)建Maven項(xiàng)目
Maven插件
Maven打包
Maven項(xiàng)目導(dǎo)入及轉(zhuǎn)換

Maven自動(dòng)化構(gòu)建

自動(dòng)化構(gòu)建定義了這樣一種場景: 在一個(gè)項(xiàng)目成功構(gòu)建完成后,其相關(guān)的依賴工程即開始構(gòu)建,這樣可以保證其依賴項(xiàng)目的穩(wěn)定。

比如一個(gè)團(tuán)隊(duì)正在開發(fā)一個(gè)項(xiàng)目 bus-core-api, 并且有其他兩個(gè)項(xiàng)目 app-web-ui 和 app-desktop-ui 依賴于這個(gè)項(xiàng)目。

app-web-ui 項(xiàng)目使用的是 bus-core-api 項(xiàng)目的 1.0 快照:

<project xmlns="http://maven.apache.org/POM/4.0.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
   http://maven.apache.org/xsd/maven-4.0.0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <groupId>app-web-ui</groupId>
   <artifactId>app-web-ui</artifactId>
   <version>1.0</version>
   <packaging>jar</packaging>
   <dependencies>
      <dependency>
      <groupId>bus-core-api</groupId>
         <artifactId>bus-core-api</artifactId>
         <version>1.0-SNAPSHOT</version>
      </dependency>
   </dependencies>
</project>

app-desktop-ui 項(xiàng)目使用的是 bus-core-api 項(xiàng)目的 1.0 快照:

<project xmlns="http://maven.apache.org/POM/4.0.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
   http://maven.apache.org/xsd/maven-4.0.0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <groupId>app-desktop-ui</groupId>
   <artifactId>app-desktop-ui</artifactId>
   <version>1.0</version>
   <packaging>jar</packaging>
   <dependencies>
      <dependency>
      <groupId>bus-core-api</groupId>
         <artifactId>bus-core-api</artifactId>
         <version>1.0-SNAPSHOT</version>
      </dependency>
   </dependencies>
</project>

bus-core-api 項(xiàng)目:

<project xmlns="http://maven.apache.org/POM/4.0.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
   http://maven.apache.org/xsd/maven-4.0.0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <groupId>bus-core-api</groupId>
   <artifactId>bus-core-api</artifactId>
   <version>1.0-SNAPSHOT</version>
   <packaging>jar</packaging>   
</project>

現(xiàn)在 app-web-ui 和 app-desktop-ui 項(xiàng)目的團(tuán)隊(duì)要求不管 bus-core-api 項(xiàng)目何時(shí)變化,他們的構(gòu)建過程都應(yīng)當(dāng)可以啟動(dòng)。

使用快照可以確保最新的 bus-core-api 項(xiàng)目被使用,但要達(dá)到上面的要求,我們還需要做一些額外的工作。

可以使用兩種方式:

? 在 bus-core-api 項(xiàng)目的 pom 文件中添加一個(gè) post-build 目標(biāo)操作來啟動(dòng) app-web-ui 和 app-desktop-ui 項(xiàng)目的構(gòu)建。

? 使用持續(xù)集成(CI) 服務(wù)器,比如 Hudson,來自行管理構(gòu)建自動(dòng)化。

使用Maven

修改 bus-core-api 項(xiàng)目的 pom.xml 文件。

<project xmlns="http://maven.apache.org/POM/4.0.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
   http://maven.apache.org/xsd/maven-4.0.0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <groupId>bus-core-api</groupId>
   <artifactId>bus-core-api</artifactId>
   <version>1.0-SNAPSHOT</version>
   <packaging>jar</packaging>
   <build>
   <plugins>
   <plugin>
      <artifactId>maven-invoker-plugin</artifactId>
      <version>1.6</version>
      <configuration>
         <debug>true</debug>
         <pomIncludes>
            <pomInclude>app-web-ui/pom.xml</pomInclude>
            <pomInclude>app-desktop-ui/pom.xml</pomInclude> 
         </pomIncludes>
      </configuration>
      <executions>
         <execution>
            <id>build</id>
            <goals>
               <goal>run</goal>
            </goals>
         </execution>
      </executions>
   </plugin>
   </plugins>
   <build>
</project>

打開命令控制臺,切換到 C:\ > MVN > bus-core-api 目錄下,然后執(zhí)行以下命令。

C:\MVN\bus-core-api>mvn clean package -U

執(zhí)行完命令后,Maven 將開始構(gòu)建項(xiàng)目 bus-core-api。

[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------
[INFO] Building bus-core-api
[INFO]    task-segment: [clean, package]
[INFO] ------------------------------------------------------------------
...
[INFO] [jar:jar {execution: default-jar}]
[INFO] Building jar: C:\MVN\bus-core-ui\target\
bus-core-ui-1.0-SNAPSHOT.jar
[INFO] ------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------

bus-core-api 構(gòu)建成功后,Maven 將開始構(gòu)建 app-web-ui 項(xiàng)目。

[INFO] ------------------------------------------------------------------
[INFO] Building app-web-ui 
[INFO]    task-segment: [package]
[INFO] ------------------------------------------------------------------
...
[INFO] [jar:jar {execution: default-jar}]
[INFO] Building jar: C:\MVN\app-web-ui\target\
app-web-ui-1.0-SNAPSHOT.jar
[INFO] ------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------

app-web-ui 構(gòu)建成功后,Maven 將開始構(gòu)建 app-desktop-ui 項(xiàng)目。

[INFO] ------------------------------------------------------------------
[INFO] Building app-desktop-ui 
[INFO]    task-segment: [package]
[INFO] ------------------------------------------------------------------
...
[INFO] [jar:jar {execution: default-jar}]
[INFO] Building jar: C:\MVN\app-desktop-ui\target\
app-desktop-ui-1.0-SNAPSHOT.jar
[INFO] -------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] -------------------------------------------------------------------

使用持續(xù)集成服務(wù)器(CI)

如果使用 CI 服務(wù)器更,我們每次的一個(gè)新項(xiàng)目,比如說實(shí)例中的 app-mobile-ui,添加為依賴 bus-core-api 項(xiàng)目時(shí),開發(fā)者就不需要更新 bus-core-api 項(xiàng)目的 pom。Hudson 將會(huì)借助 Maven 的依賴管理功能實(shí)現(xiàn)工程的自動(dòng)化創(chuàng)建。

Hudson 把每個(gè)項(xiàng)目構(gòu)建當(dāng)成一次任務(wù)。在一個(gè)項(xiàng)目的代碼提交到 SVN (或者任何映射到 Hudson 的代碼管理工具)后,Hudson 將開始項(xiàng)目的構(gòu)建任務(wù),并且一旦此構(gòu)建任務(wù)完成,Hudson 將自動(dòng)啟動(dòng)其他依賴的構(gòu)建任務(wù)(其他依賴項(xiàng)目的構(gòu)建)。

在上面的例子中,當(dāng) bus-core-ui 源代碼在 SVN 更新后,Hudson 開始項(xiàng)目構(gòu)建。一旦構(gòu)建成功,Hudson 自動(dòng)地查找依賴的項(xiàng)目,然后開始構(gòu)建 app-web-ui 和 app-desktop-ui 項(xiàng)目。

全部教程
主站蜘蛛池模板: 欧美视频在线观看免费 | 国产精品久久久久久 | 国产草草视频 | 天天干人人干 | 亚洲免费看片 | 日本高清视频wwww色 | 亚洲精品在线免费看 | 日本高清视频wwww色 | 天天操天天干天天做 | 91精品久久久久久久99蜜桃 | 私人午夜影院 | av区无码字幕中文色 | 成人a毛片免费观看网站 | 欧美日韩视频在线成人 | 特黄色一级毛片 | 亚洲国产精品一区二区久 | 亚洲欧美日韩一区超高清 | 福利精品视频 | 亚洲一区二区三区在线观看蜜桃 | 国产欧美一区二区三区精品 | 成年片色大黄全免费 | 欧洲视频一区 | 国产欧美精品一区二区三区–老狼 | 日韩欧美一区二区三区不卡视频 | 国产国语videosex | 国产日韩欧美亚洲精品95 | 天天爽夜夜爽人人爽 | 欧美日韩中文国产 | 毛片观看网址 | 欧美日韩视频在线第一区二区三区 | 在线免费日本 | 国产日韩亚洲不卡高清在线观看 | 亚洲成人福利在线观看 | 日韩精品网站 | 一机黄色片 | 高清国产精品久久久久 | 日韩亚洲欧美在线爱色 | 亚洲欧美v国产一区二区 | 日日爽夜夜操 | 国产一级久久久久久毛片 | 欧美高清精品 |