maven3常用命令、java項目搭建、web項目搭建詳細圖解

http://blog.csdn.net/edward0830ly/article/details/8748986

------------------------------maven3常用命令---------------------------

1、常用命令

    1)創建一個Project

 

mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

 

  mvn archetype:generate  固定格式

  -DgroupId         組織標識(包名)

  -DartifactId        項目名稱

  -DarchetypeArtifactId    指定ArchetypeId,maven-archetype-quickstart,創建一個Java Project;maven-archetype-webapp,創建一個Web Project

  -DinteractiveMode      是否使用交互模式

    2)編譯源代碼

mvn compile

    3)編譯測試代碼

mvn test-compile

    4)清空

mvn clean

    5)運行測試

mvn test

    6)生產站點目錄並打包

mvn site-deploy

    7)安裝當前工程的輸出文件到本地倉庫

mvn install

    8)打包

mvn package

    9)先清除再打包

mvn clean package

    10)打成jar包

mvn jar:jar

    11)生成eclipse項目  

mvn eclipse:eclipse

    12)查看幫助信息

mvn help:help

   13)查看maven有哪些項目類型分類

mvn archetype:generate -DarchetypeCatalog=intrenal

 

 

  2、標準的Maven項目結構                                         

                    

    src/main/java  存放項目的源代碼

    src/test/java  存放測試源代碼

    如果要存放一些配置文件,可以再建立一個目錄src/main/resource存放,如存放log4j.properties等



------------------------------java項目搭建---------------------------

使用Maven構建一個簡單的Java項目

  1、進入命令行,執行下面的語句。

mvn archetype:generate -DgroupId=cn.luxh.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

  執行完成後,可以看到如下結果:

  BUILD SUCCESS,當在前用戶目錄下(即C:\Documents and Settings\Administrator)下構建了一個Java Project叫做my-app。

  2、進入my-app目錄,可以看到有一個pom.xml文件,這個文件是Maven的核心。

    1)pom意思就是project object model。

    2)pom.xml包含了項目構建的信息,包括項目的信息、項目的依賴等。

    3)pom.xml文件是可以繼承的,大型項目中,子模塊的pom.xml一般都會繼承於父模塊的pom.xml

    4)剛構建的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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>cn.luxh.app</groupId>
  <artifactId>my-app</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>my-app</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>
複製代碼

     節點元素說明:    

複製代碼
       <project>      pom文件的頂級節點

    <modelVersion>   object model版本,對Maven2和Maven3來說,只能是4.0.0 

    <groupId>      項目創建組織的標識符,一般是域名的倒寫

    <artifactId>    定義了項目在所屬組織的標識符下的唯一標識,一個組織下可以有多個項目

    <packaging>      打包的方式,有jar、war、ear等

    <version>       當前項目的版本,SNAPSHOT,表示是快照版本,在開發中

    <name>        項目的名稱

    <url>        項目的地址

    <dependencies>   構建項目依賴的jar

    <description>    項目的描述
複製代碼

     其中由groupId、artifactId和version唯一的確定了一個項目座標

  3、構建的my-app項目結構如下

                    

    1)編譯源程序,進入命令行,切換到my-app目錄,執行命令:mvn clean compile

 

 

    編譯成功,在my-app目錄下多出一個target目錄,target\classes裏面存放的就是編譯後的class文件。

    2)測試,進入命令行,切換到my-app目錄,執行命令:mvc clean test

 

 

    測試成功,在my-app\target目錄下會有一個test-classes目錄,存放的就是測試代碼的class文件。

    3)打包,進入命令行,切換到my-app目錄,執行命令:mvc clean package,執行打包命令前,會先執行編譯和測試命令

 

    構建成功後,會再target目錄下生成my-app-1.0-SNAPSHOT.jar包。

    4)安裝,進入命令行,切換到my-app目錄,執行命令:mvc clean install ,執行安裝命令前,會先執行編譯、測試、打包命令

 

 

   構建成功,就會將項目的jar包安裝到本地倉庫。

    5)運行jar包,進入命令行,切換到my-app目錄,執行命令:java -cp target\my-app-1.0-SNAPSHOT.jar cn.luxh.app.App

 



------------------------------web項目搭建---------------------------

1、進入命令行,執行:

mvn archetype:generate -DgroupId=cn.luxh.app -DartifactId=my-web-app -DarchetypeArtifactId=maven-archetype-webapp -DinteractivMode=false

  出現一些版本號確認等直接回車就行,構建成功出現下面的提示。

  在當前用戶目錄下,生成的web項目目錄結構如下:

                        

  2、當然這個空的項目,只有一個index.jsp頁面,打包發佈運行。

    1)在命令行切換到my-web-app目錄,執行:mvn package,構建成功後,my-web-app目錄下多了一個target目錄,在這個目錄下會打包成my-web-app.war,把這個war包拷貝到Tomcat的發佈目錄下就可以運行了。 

    2)集成Jetty發佈運行,需要配置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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>cn.luxh.app</groupId>
  <artifactId>my-web-app</artifactId>
  <packaging>war</packaging><!--web項目默認打包方式 war-->
  <version>1.0-SNAPSHOT</version>
  <name>my-web-app Maven Webapp</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
  <build>
    <finalName>my-web-app</finalName>
    
    <pluginManagement>
    <!--配置Jetty-->
      <plugins>
        <plugin>
         <groupId>org.mortbay.jetty</groupId>   
         <artifactId>maven-jetty-plugin</artifactId>
        </plugin>
      </plugins>
</pluginManagement>

    
  </build>
  
</project>
複製代碼

    然後執行:mvn jetty:run 就可以在8080端口上訪問應用了。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章