春風博客

          春天里,百花香...

          導航

          <2007年6月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          1234567

          統計

          公告

          MAIL: junglesong@gmail.com
          MSN: junglesong_5@hotmail.com

          Locations of visitors to this page

          常用鏈接

          留言簿(11)

          隨筆分類(224)

          隨筆檔案(126)

          個人軟件下載

          我的其它博客

          我的鄰居們

          最新隨筆

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          我的Maven2之旅:十一.打包一個web工程.

          目標:將一個web工程打包.
          其目錄如下:


          使用如下命令創建Maven工程:
          mvn archetype:create -DgroupId=com.junglesong.mytodo -DartifactId=mytodo -DarchetypeArtifactId=maven-archetype-webapp

          創建工程后我們還需要做以下工作:
          1.將Eclipse工程MyTodo\WEB-INF\src\com下所有目錄及文件拷貝到maven工程mytodo\src\main\java下,這是做源碼拷貝工作.
          2.將Eclipse工程MyTodo\WEB-INF下web.xml和todo.xml拷貝到maven工程mytodo\src\main\webapp\WEB-INF下,web.xml就不肖說了,而todo.xml是做持久化用的,供源碼使用,故而要拷貝.
          3.將Eclipse工程MyTodo下web目錄拷貝到mytodo\src\main\webapp下,這是做頁面文件拷貝工作.
          到此文件轉移完成.

          此后,我們還需要修改一下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>com.junglesong.mytodo</groupId>
            
          <artifactId>mytodo</artifactId>
            
          <packaging>war</packaging>
            
          <version>1.0-SNAPSHOT</version>
            
          <name>mytodo 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>
              
          <dependency>
                
          <groupId>dom4j</groupId>
                
          <artifactId>dom4j</artifactId>
                
          <version>1.6.1</version>
                
          <scope>compile</scope>
              
          </dependency>
              
          <dependency>
                
          <groupId>javax.servlet</groupId>
                
          <artifactId>servlet-api</artifactId>
                
          <version>2.4</version>
                
          <scope>provided</scope>
              
          </dependency>
            
          </dependencies>
            
          <build>
              
          <finalName>mytodo</finalName>
            
          </build>
          </project>

          值得注意的是dependency中servlet一處的寫法.

          此后執行mvn package 我們就會得到打包文件mytodo.war.

          打開Tomcat Web Application Manager 頁面,將mytodo.war載入后,輸入:
          http://127.0.0.1:8080/mytodo/ShowPage
          將出現如下畫面:


          執行原有的操作都能正確反映,說明我們這一路過程都是正確的.

          例程下載:
          http://www.aygfsteel.com/Files/sitinspring/mytodoMvnPrj20070626094131.zip

          posted on 2007-06-25 23:04 sitinspring 閱讀(7418) 評論(3)  編輯  收藏 所屬分類: Maven2之旅

          評論

          # re: 我的Maven2之旅:十一.打包一個web工程. 2009-02-17 09:13 長青

          如果我想使用webapp的web根路徑為web,請問這該怎么修改
            回復  更多評論   

          # 打包一個web工程.報這種錯誤? 2009-03-05 11:10 shmy

          [INFO] Error assembling WAR: webxml attribute is required (or pre-existing WEB-INF/web.xml if executing in update mode)  回復  更多評論   

          # re: 我的Maven2之旅:十一.打包一個web工程. 2010-02-23 17:48 cuker919

          <build>
          <finalName>ap-manager</finalName>
          <!-- 設定Web應用中編譯結果輸出到WEB-INF/classes 中, 與使用IDE時相同 -->
          <outputDirectory>src/webapp/WEB-INF/classes</outputDirectory>
          <pluginManagement>
          <plugins>
          <!--SITE PLUGIN-->
          <plugin>
          <artifactId>maven-site-plugin</artifactId>
          <configuration>
          <locales>zh_CN</locales>
          <outputEncoding>UTF-8</outputEncoding>
          </configuration>
          </plugin>

          <!-- war插件, 設定webapp目錄為/webapp -->
          <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-war-plugin</artifactId>
          <version>2.1-beta-1</version>
          <configuration>
          <warSourceDirectory>src/webapp</warSourceDirectory>
          <archive>
          <addMavenDescriptor>false</addMavenDescriptor>
          </archive>
          </configuration>
          </plugin>
          <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-eclipse-plugin</artifactId>
          <version>2.7</version>
          </plugin>
          <plugin>
          <artifactId>maven-clean-plugin</artifactId>
          <configuration>
          <filesets>
          <fileset>
          <directory>src/webapp/WEB-INF</directory>
          <includes>
          <include>lib</include>
          <include>classes</include>
          </includes>
          <followSymlinks>false</followSymlinks>
          </fileset>
          </filesets>
          </configuration>
          </plugin>
          </plugins>
          </pluginManagement>

          </build>  回復  更多評論   

          sitinspring(http://www.aygfsteel.com)原創,轉載請注明出處.
          主站蜘蛛池模板: 清丰县| 台东县| 华宁县| 岑溪市| 崇信县| 泰宁县| 临潭县| 连江县| 琼结县| 新营市| 金平| 衢州市| 宜城市| 和田市| 观塘区| 新竹市| 五莲县| 长垣县| 郑州市| 富锦市| 宽城| 从化市| 梧州市| 连城县| 军事| 六枝特区| 滨州市| 宣化县| 许昌市| 博湖县| 鲁山县| 越西县| 武清区| 青岛市| 洛宁县| 十堰市| 桑日县| 陵水| 扶风县| 甘孜| 霍城县|