小菜毛毛技術分享

          與大家共同成長

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            164 Posts :: 141 Stories :: 94 Comments :: 0 Trackbacks

          最近使用發現了個問題,在下面的介紹使用maven建立web工程的時候有個選項: -DarchetypeArtifactId=maven-archetype-webapp,假如你把這其中的大寫A不小心成了小寫,則在pom.xml中,生成的將是jar包,而不再是war包了。這兩天看了看ant和maven,感覺受益不小,以前總以為自己會ant和maven呢,老認為不用很學習的ant和mvn也有這么大的學問阿,把我的心得寫寫: maven:   創建一個web-app工程:   mvn archetype:create -DgroupID=[類-包的名字] -DartifactID=[應用的名稱] -DrarchetypeArtifactID=maven-archetype-webapp 請注意,上面的語句是不正確的,如果這樣寫了就會出下面的錯誤: BUILD ERROR  Error creating from archetype [INFO] ------------------------------------------------------------------------ [ERROR] BUILD ERROR [INFO] ------------------------------------------------------------------------ [INFO] Error creating from archetype Embedded error: Artifact ID must be specified when creating a new project from an archetype. [INFO] ------------------------------------------------------------------------ [INFO] For more information, run Maven with the -e switch [INFO] ------------------------------------------------------------------------ 這是新手很容易犯的錯誤!改正方法是把上面的“ID”改為“Id”,這樣就可以正確的建立一個工程了!給定兩個簡單模型: Application: mvn archetype:create -DgroupId=ce.demo.mvn -DartifactId=app |-- pom.xml `-- src     |-- main     |   `-- java     |       `-- ce     |           `-- demo     |               `-- mvn     |                   `-- App.java     `-- test         `-- java             `-- ce                 `-- demo                     `-- mvn                         `-- AppTest.java web-app: mvn archetype:create -DgroupId=ce.demo.mvn -DartifactId=webapp-DarchetypeArtifactId=maven-archetype-webapp |-- pom.xml `-- src     `-- main         `-- webapp             |-- index.jsp             |-- WEB-INF                 `-- web.xml
          使用如下命令可以建立一個Struts2 Starter應用程序
          mvn archetype:create
          -DgroupId=tutorial
              -DartifactId=tutorial
              -DarchetypeGroupId=org.apache.struts \
              -DarchetypeArtifactId=struts2-archetype-starter \
              -DarchetypeVersion=2.0.5-SNAPSHOT
          -DremoteRepositories=http://people.apache.org/repo/m2-snapshot-repository
           
          參數含義:
           
          參數 含義
          groupId 當前應用程序隸屬的Group的ID,通常是公司所有應用程序的根目錄,例如:com.jpleasure
          artifactId  當前應用程序的ID
          package 代碼生成時使用的根包的名字,如果沒有給出,默認使用archetypeGroupId
          archetypeGroupId 原型(archetype)的Group ID,因為我們這里使用的是Struts2的原型,所以這里總是org.apache.struts
          archetypeArtifactId  原型(archetype)ID
          archetypeVersion  原型(archetype)版本
          remoteRepositories  包含原型(archetype)的遠程資源庫的列表,如果部署在標準的maven資源庫或者本地,這不需要標記本項

           
          一些相關的Maven命令(注意要再項目目錄中運行)
          構建
          mvn install
          創建IntelliJ IDEA項目文件
          mvn idea:idea
          創建Eclipse項目文件
           mvn eclipse:eclipse
          運行測試
          mvn test
          清除
          mvn clean
          打包
          mvn package
          獲得需要的JAR文件
          mvn initialize
          使用Jetty運行
          mvn jetty:run 在使用此命令之前,需要在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</span-->modelVersion>  
            <groupId>com.mycompany.webapp</span-->groupId>  
            <artifactId>myweb</span-->artifactId>  
            <packaging>war</span-->packaging>  
            <version>1.0-SNAPSHOT</span-->version>  
            <name>myweb Maven Webapp</span-->name>  
            <url>http://maven.apache.org</span-->url>  
            <dependencies>  
              <dependency>  
                <groupId>junit</span-->groupId>  
                <artifactId>junit</span-->artifactId>  
                <version>3.8.1<!--</span-->version>  
                <scope>test<!--</span-->scope>  
              </span-->dependency>  
            </span-->dependencies>  
            <build>  
              <finalName>myweb</span-->finalName> 
              <!-- 添加以下6行插件配置代碼 -->

              <plugins>  
                <plugin>  
                  <groupId>org.mortbay.jetty</groupId>  
                  <artifactId>maven-jetty-plugin</artifactId>  
                </plugin>  
              </plugins> 
              <!-- 添加以上6行插件配置代碼 -->
            </build>  
          </project> 
          請注意,在./src/main/目錄下面見一個java文件夾,以存放bean,這需要手動來建立:
          mkdir $webapp/src/main/java

          Maven2較maven1有較大的變化,這里推薦使用maven2并不僅僅因為它是高的版本. 其中變化較大的是在它建立的項目中,只有一個pom.xm配置文件.這里是我的一個工程的配置文件拷貝 attachment/200710/pom.xml.... 你會發現其中的代碼如下   <project>
                  <modelVersion>4.0.0</modelVersion>
                  <groupId>com.last999</groupId>
                  <artifactId>bbs</artifactId>
                  <packaging>war</packaging>
                  <version>1.3</version>
                  <name>bbs</name>
                  <url>last999.com</url>
                  <description>mybbs</description>

                  <dependencies>
                  <!-- Junit -->
                  <dependency>
                     <groupId>junit</groupId>
                     <artifactId>junit</artifactId>
                     <version>4.4</version>
                     <scope>test</scope>
                  </dependency>
          .......................
           

          項目都是在<project>中設定,加入要添加新的開源框架,你只需要到maven源的老家走一趟,查到你需要的版本:比如我們現在需要使用struts.那么我們只需要添加以下幾行:
          <dependency>
                      <groupId>org.apache.struts</groupId>
                      <artifactId>struts2-core</artifactId>
                      <version>2.0.9</version>
           </dependency>
                如果再需要和spring集成,除了添加spring需要的包外,你只需要添加:
          <dependency>
                      <groupId>org.apache.struts</groupId>
                      <artifactId>struts2-spring-plugin</artifactId>
                      <version>2.0.9</version>
                  </dependency>
          其他一切就 讓maven給你自動完成吧!


          本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/zql2002/archive/2008/06/12/2537770.aspx

          posted on 2009-10-27 11:35 小菜毛毛 閱讀(1160) 評論(0)  編輯  收藏 所屬分類: maven

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 五常市| 子洲县| 河东区| 偏关县| 鲜城| 张家界市| 左云县| 兴和县| 柘荣县| 新丰县| 余庆县| 巴楚县| 馆陶县| 淅川县| 六盘水市| 呈贡县| 澄城县| 西林县| 安丘市| 建平县| 曲靖市| 平远县| 南京市| 晋中市| 万州区| 通榆县| 甘孜县| 嫩江县| 田林县| 乐都县| 杭州市| 淮阳县| 昌江| 永修县| 石屏县| 紫云| 定州市| 娱乐| 赤城县| 迁安市| 新疆|