久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Maven常用命令

 fanxing018 2010-03-29

[ZT]Maven常用命令 收藏
Maven常用命令
關(guān)鍵字: maven常用命令

1,、常用命令
mvn compile
編譯主程序源代碼,,不會編譯test目錄的源代碼。第一次運(yùn)行時(shí),,會下載相關(guān)的依賴包,,可能會比較費(fèi)時(shí)。

mvn test-compile
編譯測試代碼,,compile之后會生成target文件夾,,主程序編譯在classes下面,測試程序放在test-classes下,。

mvn test
運(yùn)行應(yīng)用程序中的單元測試

mvn site
生成項(xiàng)目相關(guān)信息的網(wǎng)站

mvn clean
清除目標(biāo)目錄中的生成結(jié)果

mvn package
依據(jù)項(xiàng)目生成 jar 文件,,打包之前會進(jìn)行編譯,測試,。

mvn install
在本地 Repository 中安裝 jar,。

mvn eclipse:eclipse
生成 Eclipse 項(xiàng)目文件及包引用定義,注意,,需確保定義Classpath Variables: M2_REPO,,指向本地maven類庫目錄。

2,、pom.xml 說明

<?xml version="1.0" encoding="UTF-8"?>
<project>
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.tutorial.struts2</groupId>
    <artifactId>tutorial</artifactId>
    <packaging>war</packaging>
    <version>1.0-SNAPSHOT</version>
    <name>Struts 2 Starter</name>
    <url>http://www.myComp.com</url>
    <description>Struts 2 Starter</description>
    <dependencies>
        <!-- Junit -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.4</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring</artifactId>
            <version>2.5.5</version>
        </dependency>
    </dependencies>
</project>
說明:
modelversion pom.xml 使用的對象模型版本
groupId 創(chuàng)建項(xiàng)目的組織或團(tuán)體的唯一 Id
artifactId> 項(xiàng)目唯一Id, 項(xiàng)目名
packaging 打包擴(kuò)展名(JAR,、WAR、EAR)
version 項(xiàng)目版本號
name 顯示名,,用于生成文檔
url 組織站點(diǎn),,用于生成文檔
description 項(xiàng)目描述,,用于生成文檔
dependency之scope 管理依賴部署,取值如下:
  compile 缺省值,,用于所有階段,,隨項(xiàng)目一起發(fā)布;
  provided 期望JDK,、容器或使用者提供此依賴,。如servlet.jar;
  runtime 只在運(yùn)行時(shí)使用,;
  test 只在測試時(shí)使用,,不隨項(xiàng)目發(fā)布;
  system 需顯式提供本地jar,,不在代碼倉庫中查找,;


3、創(chuàng)建Maven Web項(xiàng)目
 mvn archetype:generate -DgroupId=com.demo -DartifactId=web-app -DarchetypeArtifactId=maven-archetype-webapp
groupId 組織名,,對應(yīng)項(xiàng)目的package,;artifactId 項(xiàng)目名;archetypeArtifactId 項(xiàng)目類型

mvn -Declipse.workspace=c:\eclipse\workspace eclipse:add-maven-repo 

為給eclipse指定工作空間,。"c:\eclipse\workspace "即eclipse的workspace

mvn eclipse:eclipse  
為項(xiàng)目造成eclipse工程文件,。即將maven項(xiàng)目轉(zhuǎn)化為一個eclipse工程

mvn –o war:exploded 離線發(fā)布修改過的jsp等工程文件
mvn –o package –Dmaven.test.skip=true 
離線打包工程,不含測試代碼

mvn compile hibernate3:hbm2ddl  會通過hibernate映射文件創(chuàng)建數(shù)據(jù)庫表,。


mvn –o appfuse:gen –Dentity=Teacher
mvn –o appfuse:install –Dentity=Teacher
通過appfuse框架自動生成與實(shí)體類對應(yīng)的dao,service,action,test,、jsp等程序文件

mvn install:install-file -DgroupId=javax.transaction -DartifactId=jta -Dversion=1.0.1B -Dpackaging=jar -Dfile=D:\Test\ssh\WebRoot\WEB-INF\lib\jta.jar
將本地jar包安裝到應(yīng)用中去。"D:\Test\ssh\WebRoot\WEB-INF\lib\jta.jar"即本地包
Maven2 的運(yùn)行命令為 : mvn ,,
常用命令為 :

             mvn archetype:create :創(chuàng)建 Maven 項(xiàng)目

             mvn compile :編譯源代碼

             mvn test-compile :編譯測試代碼

             mvn test : 運(yùn)行應(yīng)用程序中的單元測試

             mvn site : 生成項(xiàng)目相關(guān)信息的網(wǎng)站

             mvn clean :清除目標(biāo)目錄中的生成結(jié)果

             mvn package : 依據(jù)項(xiàng)目生成 jar 文件

             mvn install :在本地 Repository 中安裝 jar

             mvn eclipse:eclipse :生成 Eclipse 項(xiàng)目文件

生成項(xiàng)目

             建一個 JAVA 項(xiàng)目 : mvn archetype:create -DgroupId=com.demo -DartifactId=App

          建一個 web 項(xiàng)目 : mvn archetype:create -DgroupId=com.demo -DartifactId=web-app -DarchetypeArtifactId=maven-archetype-webapp

生成 Eclipse 項(xiàng)目

普通 Eclipse 項(xiàng)目執(zhí)行 : mvn eclipse:eclipse

           Eclipse WTP 項(xiàng)目執(zhí)行 : mvn eclipse:eclipse –Dwtpversion=1.0

              ( wtp1.0 以上版本均可用)

pom.xml 文件基本節(jié)點(diǎn)介紹

<project > :文件的根節(jié)點(diǎn) .
<modelversion > : pom.xml 使用的對象模型版本 .
<groupId > :創(chuàng)建項(xiàng)目的組織或團(tuán)體的唯一 Id.
<artifactId > :項(xiàng)目的唯一 Id, 可視為項(xiàng)目名 .
<packaging > :打包物的擴(kuò)展名,,一般有 JAR,WAR,EAR 等
<version > :產(chǎn)品的版本號 .
<name > :項(xiàng)目的顯示名,常用于 Maven 生成的文檔,。
<url > :組織的站點(diǎn),,常用于 Maven 生成的文檔。
<description > :項(xiàng)目的描述,,常用于 Maven 生成的文檔,。

在 POM 4 中, <dependency> 中還引入了 <scope> ,,它主要管理依賴的部署,。

目前 <scope> 可以使用 5 個值:

compile :缺省值,適用于所有階段,,會隨著項(xiàng)目一起發(fā)布,。

provided :類似 compile ,期望 JDK ,、容器或使用者會提供這個依賴,。如 servlet.jar ,。

runtime :只在運(yùn)行時(shí)使用,如 JDBC 驅(qū)動,,適用運(yùn)行和測試階段,。

test :只在測試時(shí)使用,用于編譯和運(yùn)行測試代碼,。不會隨項(xiàng)目發(fā)布,。

         system :類似 provided ,需要顯式提供包含依賴的 jar ,, Maven 不會在 Repository 中查找它,。


定義自己的結(jié)構(gòu)

新建一個 archetype 項(xiàng)目 :

mvn archetype:create\
-DgroupId=cn.prof\
-DartifactId=prof-archetype\
-DarchetypeArtifactId=maven-archetype-archetype

       主要的模板文件 : archetype-resources/pom.xml

       修改其中內(nèi)容

       修改 META-INF/maven/archetype.xml 中定義了相關(guān)的 sources

       安裝此項(xiàng)目 : mvn install

執(zhí)行下面的命令創(chuàng)建新目錄的項(xiàng)目:

mvn archetype:create -DgroupId=com.mergere.mvnbook \
-DartifactId=proficio-example\
-DarchetypeGroupId=com.xxx.mvn\
-DarchetypeArtifactId= prof-archetype \
-DarchetypeVersion=1.0-SNAPSHOT

目錄說明

Maven2  Directory
 
目錄
 二級目錄
 三級目錄
 四級目錄
 說明
 
pom.xml
  
 Maven2 的項(xiàng)目設(shè)置文件
 
src/
  
 源碼目錄
 
main/
  
 項(xiàng)目主體目錄根
 
java/
  
 源代碼目錄
 
resources/
  
 所需資源目錄
 
filters/
  
 資源過濾文件目錄
 
assemby/
  
 Assembly descriptors
 
config/
  
 配置文件根目錄
 
webapp/
  
 web 應(yīng)用目錄
 
WEB-INF/
 WEB-INF 目錄
 
test/
  
 項(xiàng)目測試目錄根
 
java/
  
 測試代碼目錄
 
resources/
  
 測試所需資源目錄
 
filters/
  
 測試資源過濾文件目錄
 
site/
  
 與site 相關(guān)的資源目錄
 
target/
  
 輸出目錄根
 
classes/
  
  
 項(xiàng)目主體輸出目錄
 
test_classes/
  
 項(xiàng)目測試輸出目錄
 
site/
  
 項(xiàng)目site 輸出目錄


    在Maven2中有了明確的生命周期概念,而且都提供與之對應(yīng)的命令,,使得項(xiàng)目構(gòu)建更加清晰明了。主要的生命周期階段:

    validate,,驗(yàn)證工程是否正確,,所有需要的資源是否可用。
compile,,編譯項(xiàng)目的源代碼,。
test-compile,編譯項(xiàng)目測試代碼,。
test,,使用已編譯的測試代碼,測試已編譯的源代碼,。
package,,已發(fā)布的格式,如jar,,將已編譯的源代碼打包,。
integration-test,在集成測試可以運(yùn)行的環(huán)境中處理和發(fā)布包,。
verify,,運(yùn)行任何檢查,驗(yàn)證包是否有效且達(dá)到質(zhì)量標(biāo)準(zhǔn),。
install,,把包安裝在本地的repository中,可以被其他工程作為依賴來使用
deploy,,在整合或者發(fā)布環(huán)境下執(zhí)行,,將最終版本的包拷貝到遠(yuǎn)程的repository,使得其他的開發(fā)者或者工程可以共享,。
generate-sources,,產(chǎn)生應(yīng)用需要的任何額外的源代碼,,如xdoclet。
如果要執(zhí)行項(xiàng)目編譯,,那么直接輸入:mvn compile即可,,對于其他的階段可以類推。階段之間是存在依賴關(guān)系(dependency)的,,如test依賴test-compile,。在執(zhí)行 mvn test時(shí),會先運(yùn)行mvn test-compile,,然后才是mvn test

因?yàn)閙aven2 是有生命周期這一概念的,,所以如果你執(zhí)行package,相應(yīng)的以前步驟,,如compile,test等都會自動執(zhí)行,。
剛開始執(zhí)行會比較慢,需要從maven2遠(yuǎn)程庫中下載所有的文件到本地,。如果你的本地沒有相應(yīng)的依賴包,,則每次maven都會去遠(yuǎn)程下載,所以配置一個鏡像庫就比較重要了,。

碰到的問題

1.       當(dāng) M2eclipse 插件裝上之后,,會報(bào)這個錯

Eclipse is running in a JRE, but a JDK is required

Some Maven plugins may not work when importing projects or updating source folders.

解決辦法 :查看 eclipse\readme\readme_eclipse.html 里面有詳細(xì)說明,在 Selecting a workspace 這一節(jié)

創(chuàng)建一個快捷方式,,設(shè)定目標(biāo)位置為 D:\eclipse_jee\eclipse.exe -vm D:\Java\jdk1.5.0_10\bin\javaw

因?yàn)槟J(rèn) vm 為 jdk\jre\bin\javaw ,,直接改到 jdk 下,錯誤即可消除

2.       使用命令 mvn eclipse:eclipse –Dwtpversion=1.0 之后,,導(dǎo)入的項(xiàng)目 Project Facet 的 java 還是 1.4 ,,而我 Eclipse 上設(shè)置的是 5.0

解決辦法 :在 pom.xml 中 plugins 加入說明就可以了

Xml代碼
<plugins> 
        <plugin> 
           <artifactId>maven-compiler-plugin</artifactId> 
           <configuration> 
               <source>1.5</source> 
               <target>1.5</target> 
           </configuration> 
        </plugin> 
</plugins> 
<plugins>         <plugin>            <artifactId>maven-compiler-plugin</artifactId>            <configuration>                <source>1.5</source>                <target>1.5</target>            </configuration>         </plugin> </plugins>
 

3.   在使用命令mvn eclipse:eclipse 之后,import到Eclipse,,然后在Eclipse項(xiàng)目上點(diǎn)右鍵,,選擇插件Maven>Enable Dependency Management后,會報(bào)重復(fù)引用依賴的錯誤
解決辦法 :再執(zhí)行mvn eclipse:eclipse然后刷新Eclipse的項(xiàng)目,,取消掉maven插件的引用依賴,,錯誤就會消除

4.   Failure executing javac, but could not parse the error:
編譯器 (1.5.0_10) 中出現(xiàn)異常。 如果在 Bug Parade 中沒有找到該錯誤,,請?jiān)?Java Developer Connection (http://java./webapps/bugreport )  對該錯誤進(jìn)行歸檔,。請?jiān)趫?bào)告中附上您的程序和以下診斷信息。謝謝您的合作,。
java.nio.BufferOverflowException
解決辦法 :(臨時(shí))在控制面板中將區(qū)域與語言選項(xiàng)中,,把當(dāng)?shù)卣Z言設(shè)為英語

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多