国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

maven介紹

xorpay / 1840人閱讀

摘要:介紹簡介編寫的用于構(gòu)建系統(tǒng)的自動化工具。文件的基本配置介紹什么是,項目對象模型。基本設(shè)置協(xié)作關(guān)系組織標(biāo)識,例如,在目錄下,將是目錄。

1. Maven介紹

1.1. 簡介

java編寫的用于構(gòu)建系統(tǒng)的自動化工具。

目前版本是2.0.9,注意maven2和maven1有很大區(qū)別,閱讀第三方文檔時需要區(qū)分版本。

1.2. Maven資源
?
見官方網(wǎng)站;

?
The 5 minute test,官方簡易入門文檔;

?
Getting Started Tutorial,官方入門文檔;

?
Build Cookbook,官方的cookbook;

?
POM Reference,POM文件的設(shè)置參考

?
Settings Reference ,settings文件的設(shè)置參考

?
Better Builds with Maven,免費的電子書,下載需要注冊。

1.3. Maven和Ant的區(qū)別
Maven正在逐漸取代Ant,很多java開源軟件(Spring、Struts2 ……)已經(jīng)使用maven。
?不需要寫復(fù)雜的處理腳本;
?聲明式的類庫依賴管理。

1.4. Maven的基本功能
?構(gòu)建:比如生成class、jar、war或者ear文件
?生成文檔:比如生成javadoc、網(wǎng)站文檔
?生成報告:比如junit測試報告
?生成依賴類庫:生成文檔,說明項目多其他軟件的依賴
?有關(guān)SCM:SCM(Software Configuration Management),軟件配置管理,比如版本控制,比如bug管理等等
?發(fā)布:生成供發(fā)布的分發(fā)包,比如生成Struts2的分發(fā)包,供提交給用戶使用
?部署:比如,web應(yīng)用程序,自動部署到指定的服務(wù)器上

通過我寫的商品管理的小例子,演示結(jié)合maven和svn的功能。

2. Maven使用

2.1. Maven的安裝和配置
?從官方網(wǎng)站下載最新的Maven分發(fā)包http://maven.apache.org/download.html,當(dāng)前為2.0.9;
?解壓縮到本地;
?配置maven, 將maven/bin目錄設(shè)置到windows環(huán)境變量Path中
?檢查maven是否安裝成功, 在命令行中執(zhí)行 mvn -version

2.2. Maven的基本使用

Maven的基本使用介紹通過命令行編寫簡單的java和web項目。

2.2.1. 實現(xiàn)Java項目

通過maven在命令行下創(chuàng)建普通java項目,也就是main方法執(zhí)行的項目或者jar文件的類庫。

2.2.1.1. 創(chuàng)建Maven項目

執(zhí)行:

mvn archetype:generate

在交互界面中:
?Choose a number: 回車即可,也就是選擇15
?Define value for groupId: 輸入組織id,比如easymorse.com
?Define value for artifactId:輸入項目名稱,比如helloworld
?Define value for version: 輸入版本號,可以直接回車,默認是1.0-SNAPSHOT
?Define value for package: java的包名,比如com.easymorse
?然后回車表示確認上述輸入即可。

觀察helloworld目錄(Define value for artifactId輸入的項目名稱)下生成的文件和目錄:
?項目構(gòu)建文件: pom.xml
?代碼框架: srcmainjavacomeasymorseApp.java
?
測試代碼: src estjavacomeasymorseAppTest.java

2.2.1.2. 運行Maven項目

命令行進入helloworld目錄Define value for artifactId輸入的項目名稱)。

項目打包

mvn package

檢查命令生成了什么?
?target目錄
?編譯了代碼
?編譯了測試代碼
?使用junit測試并生成的報告
?生成代碼的jar文件

運行打包的jar文件:

java -cp targethelloworld-1.0-SNAPSHOT.jar com.easymorse.App

編譯源程序

mvn compile

編譯并測試

mvn test

清空生成的文件

mvn clean

將maven項目轉(zhuǎn)化為eclipse項目

命令行運行:

mvn eclipse:eclipse

打開eclipse,菜單選擇:file>import>general>existing projects into workspace,在對話框中選中目錄,導(dǎo)入即可。

如果要清除有關(guān)eclipse項目的配置信息:

mvn -Dwtpversion=1.0 eclipse:clean

聯(lián)合使用

mvn eclipse:clean clean

2.2.2. 實現(xiàn)Web項目

通過maven在命令行下創(chuàng)建java web項目。

2.2.2.1. 創(chuàng)建Maven項目

在命令行輸入,這一步和創(chuàng)建java項目類似:

mvn archetype:generate

交互步驟說明:
?Choose a number: 回車即可,也就是選擇18,這里和java普通項目不一樣
?Define value for groupId: 輸入組織id,比如easymorse.com
?Define value for artifactId:輸入項目名稱,比如helloworld
?Define value for version: 輸入版本號,可以直接回車,默認是1.0-SNAPSHOT
?Define value for package: java的包名,比如com.easymorse
?然后回車表示確認上述輸入即可。

需要在pom.xml文件中增加servlet容器的插件:

    
            
                    
                            org.codehaus.mojo
                            tomcat-maven-plugin
                    
                    
                            org.mortbay.jetty
                            maven-jetty-plugin
                            6.1.6
                    
                    
                            maven-compiler-plugin
                            
                                    1.6
                                    1.6
                                    UTF-8
                            
                    
            
    

?tomcat插件
?jetty插件
?編譯插件的配置

repository目錄的作用

repository的位置,在用戶目錄的.m2目錄下。

repository目錄的作用,對依賴類庫的緩存。

2.2.2.2. 運行Maven項目

項目打包

mvn package

啟動tomcat

mvn tomcat:run

啟動jetty

mvn jetty:run

轉(zhuǎn)化為eclipse項目

mvn -Dwtpversion=1.5 eclipse:eclipse

這樣生成wtp插件的web項目。

打開eclipse,菜單選擇:file>import>general>existing projects into workspace,在對話框中選中目錄,導(dǎo)入即可。

另外,需要在eclipse里創(chuàng)建一個classpath變量,名稱為:M2_REPO,值為系統(tǒng)用戶下.m2/repository目錄。

3. POM文件的基本配置
3.1. POM介紹
3.1.1. 什么是POM

Project Object Model,項目對象模型。

通過xml格式保存的pom.xml文件。

作用類似ant的build.xml文件,功能更強大。

該文件用于管理:源代碼、配置文件、開發(fā)者的信息和角色、問題追蹤系統(tǒng)、組織信息、項目授權(quán)、項目的url、項目的依賴關(guān)系等等。

3.1.2. 快速瀏覽

一個完整的pom.xml文件,放置在項目的根目錄下。


  4.0.0

  
  ...
  ...
  ...
  ...
  ...
  ...
  ...
  ...
  ...

  
  ...
  ...

  
  ...
  ...
  ...
  ...
  ...
  ...
  ...
  ...

  
  ...
  ...
  ...
  ...
  ...
  ...
  ...
  ...
  ...

3.2. 基本設(shè)置
3.2.1. 協(xié)作關(guān)系


  4.0.0

  org.codehaus.mojo
  my-project
  1.0
  war

?groupId : 組織標(biāo)識,例如:org.codehaus.mojo,在M2_REPO目錄下,將是: org/codehaus/mojo目錄。
?artifactId : 項目名稱,例如:my-project,在M2_REPO目錄下,將是:org/codehaus/mojo/my-project目錄。
?version : 版本號,例如:1.0,在M2_REPO目錄下,將是:org/codehaus/mojo/my-project/1.0目錄。
?packaging : 打包的格式,可以為:pom , jar , maven-plugin , ejb , war , ear , rar , par

3.2.2. POM間關(guān)系
3.2.2.1. 依賴關(guān)系
依賴關(guān)系列表(dependency list)是POM的重要部分。


    
      junit
      junit
      4.0
      test
    
    ...
  

?groupId , artifactId , version :
?scope : compile(default),provided,runtime,test,system
?exclusions

如何查到依賴的類庫?

一般可以通過這個網(wǎng)站:http://www.mvnrepository.com

比如查詢hibernate,可以找到結(jié)果列表中的hibernate類庫條目。

點擊:http://www.mvnrepository.com/artifact/org.hibernate/hibernate,

選擇版本,比如3.2.6ga,即:http://www.mvnrepository.com/art ... /hibernate/3.2.6.ga

復(fù)制文章中的:


    org.hibernate
    hibernate
    3.2.6.ga

到pom.xml文件中即可。

是否還需要找到hibernate依賴的pom?

不需要,hibernate也會有pom,maven會通過它的pom自動找到它依賴的類庫。

3.2.2.2. 繼承關(guān)系

繼承其他pom.xml配置的內(nèi)容。

maven提供了一個類似java.lang.Object的頂級父pom.xml文件。

可以通過下面命令查看當(dāng)前pom.xml受到超pom.xml文件的影響:

mvn help:effective-pom

創(chuàng)建一個各種項目可復(fù)用的pom.xml文件:http://easymorse.googlecode.com/svn/trunk/pom/pom.xml

部署要復(fù)用的pom.xml文件:

mvn install

在自己的pom文件中繼承上述pom:


com.easymorse
pom
0.1

3.2.2.3. 聚合關(guān)系

用于將多個maven項目聚合為一個大的項目。

比如目錄結(jié)構(gòu)如下:

.
|-- pom.xml
|-- module-a
    `-- pom.xml
|-- module-b
    `-- pom.xml
|-- module-c
    `-- pom.xml
|-- foo-all
    `-- pom.xml

那么總的pom.xml文件類似:

...
    
        module-a
        module-b
        module-c
        foo-all
    

參考文檔:http://maven.apache.org/plugins/maven-eclipse-plugin/reactor.html

原文示例有誤,見:modules.rar

3.2.3. 其他配置

maven的屬性,是值的占位符,類似EL,類似ant的屬性,比如${X},可用于pom文件任何賦值的位置。

有以下分類:
?env.X:操作系統(tǒng)環(huán)境變量,比如${env.PATH}
?
project.x:pom文件中的屬性,比如:1.0,引用方式:${project.version}

?
settings.x:settings.xml文件中的屬性,比如:false,引用方式:${settings.offline}

?Java System Properties:java.lang.System.getProperties()中的屬性,比如java.home,引用方式:${java.home}
?
自定義:在pom文件中可以:c:/apps/cargo-installs,引用方式:${installDir}

3.3. 其他
3.3.1. 設(shè)置離線

在.m2目錄下創(chuàng)建settings.xml文件(如果沒有的話)

 settings 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/settings-1.0.0.xsd">
            true
    

3.3.2. 安裝第三方包

經(jīng)常有第三方包,因為一些原因,在網(wǎng)上repository上沒有,需要自己動手安裝。

比如sun某些版本的jar文件,比如oracle的驅(qū)動。

已oracle驅(qū)動程序為例,比如驅(qū)動路徑為c:/driver/ojdbc14.jar,是10.2.0.3.0版本

在該網(wǎng)址能夠查到:http://www.mvnrepository.com/artifact/com.oracle/ojdbc14 artifactId和groupId。

mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc14 -Dversion=10.2.0.3.0 -Dpackaging=jar -Dfile=c:/driver/ojdbc14.jar

這樣就可以在pom中依賴引用了:


    com.oracle
    ojdbc14
    10.2.0.3.0

3.3.3. 部署到tomcat

tomcat配置有管理權(quán)限的用戶:conf omcat-users.xml



  
  

在pom文件的tomcat插件中添加:


org.codehaus.mojo
tomcat-maven-plugin

http://localhost:8080/manager
myserver
/mycontext

在.m2/settings.xml文件中增加:


        
                
                        myserver
                        marshal
                        password
                
        

運行打包部署,在maven項目目錄下:

mvn tomcat:deploy

訪問:http://localhost:8080/mycontext/ 即可。

撤銷部署:

mvn tomcat:undeploy

啟動web應(yīng)用:

mvn tomcat:start

停止web應(yīng)用:

mvn tomcat:stop

重新部署:

mvn tomcat:redeploy

部署展開的war文件:

mvn war:exploded tomcat:exploded

3.3.4. 未講到的內(nèi)容

?settings.xml的配置
?pom.xml的詳細配置
?
自定義插件的方法:http://maven.apache.org/plugins/maven-archetype-plugin/examples/archetype.html

?
自定義goal的執(zhí)行:

?插件的查詢和使用
?搭建鏡像repository
?在maven中調(diào)用ant

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/64116.html

相關(guān)文章

  • maven構(gòu)建java項目工具介紹

    摘要:一用途在創(chuàng)建項目的時候,可以自己手動創(chuàng)建,也可以利用工具創(chuàng)建,也就是來創(chuàng)建。可以用來創(chuàng)建項目部署項目安裝管理依賴編譯代碼管理二進制等。的目的是使項目過程規(guī)范化自動化高效化及強大的可擴展性。 一、maven用途 java在創(chuàng)建項目的時候,可以自己手動創(chuàng)建,也可以利用工具創(chuàng)建,也就是maven來創(chuàng)建。 maven可以用來創(chuàng)建項目、部署項目、安裝管理依賴、編譯代碼、管理二進制等。 mave...

    liujs 評論0 收藏0
  • Apache Maven介紹和安裝

    摘要:的好處節(jié)省空間項目的體積相比傳統(tǒng)項目小很多,因為將包和項目分開了,通過依賴管理來管理包。一鍵構(gòu)建項目可以完成的工作編譯測試運行打包部署。 Maven 簡介 什么是 Maven Apache Maven,是一個軟件項目管理及自動構(gòu)建工具,由Apache軟件基金會所提供,一個開源項目,由 Java 開發(fā),并且只是用來管理 Java 項目的。 Maven 的好處 節(jié)省空間: Maven ...

    wuyumin 評論0 收藏0
  • Apache Maven介紹和安裝

    摘要:的好處節(jié)省空間項目的體積相比傳統(tǒng)項目小很多,因為將包和項目分開了,通過依賴管理來管理包。一鍵構(gòu)建項目可以完成的工作編譯測試運行打包部署。 Maven 簡介 什么是 Maven Apache Maven,是一個軟件項目管理及自動構(gòu)建工具,由Apache軟件基金會所提供,一個開源項目,由 Java 開發(fā),并且只是用來管理 Java 項目的。 Maven 的好處 節(jié)省空間: Maven ...

    _DangJin 評論0 收藏0
  • Maven_00

    摘要:例如,可以提供更改日志用源碼管理工具生成交叉引用郵件列表依賴清單單元測試報告含覆蓋率提供開發(fā)過程的最佳實踐指南通過收集現(xiàn)行的開發(fā)最佳實踐,來指導(dǎo)用構(gòu)建的項目。 本文大約1026個字,閱讀時間4分鐘。 主要介紹了Maven名字的由來、Maven產(chǎn)生的背景和Maven的主要功能。 問題:Maven是啥? 大多數(shù)人都用Maven來管理Java項目的依賴,這個應(yīng)該是Maven的主要功能沒跑了,...

    booster 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<