|
本文是在網(wǎng)上其他博客的啟發(fā)引導(dǎo)下,經(jīng)自己瀝血求證實現(xiàn)而作。因此,文章類型列為“轉(zhuǎn)載”,不好意思自稱原創(chuàng)。
一、Maven項目創(chuàng)建 1.1 新建工程,Maven->Maven Project
1.2 選擇archeType:maven-archetype-webapp
1.3 輸入Group Id, Artifact Id, Version, Package,這四個屬性唯一確定項目的坐標(biāo)。
1.4 DevelopmentAssembly:test信息不需要打包,需要移除。
1.5 JavaCompiler:Compiler compliance level 一般選擇1.6.
二、Maven集成tomcat熱部署配置 本機使用Eclipse-jee-kepler,apache-tomcat-7.0.47,JDK1.6.0_05和apache-maven-3.2.2 2.1 修改tomcat下conf/tomcat-users.xml配置,如增加用戶zgr,這里雖然沒有顯示定義manager-script角色,顯然,這是tomcat默認就有的,只是其下面沒有添加任何用戶:
<userusername='zgr' password='zgr'roles='manager-script'/>
2.2 修改apache-maven-3.2.2\conf\settings.xml,定義tomcat7服務(wù)器,id是自定義的,下面還會用到,用戶名密碼與2.1tomcat-users.xml配置中選擇的用戶一致。
<servers>
<server>
<id>tomcat7</id>
<username>zgr</username>
<password>zgr</password>
</server>
</servers>
2.3 項目pom.xml添加插件tomcat7-maven-plugin,server值'tomcat7'引用的就是2.2定義的server id。
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<url>http://localhost:8088/manager/text</url>
<server>tomcat7</server>
</configuration>
</plugin>
三、項目打包發(fā)布到tomcat 條件都已準(zhǔn)備好了,只需要啟動了。 3.1 手動啟動tomcat7。 3.2. 項目右鍵選擇Run As-> Run Configurations,Maven Build下New launch configuration: Base directory:項目所在目錄 Goals:構(gòu)建目標(biāo)tomcat7:redeploy 3.3 點擊Run按鈕,打包發(fā)布。 3.4 訪問:http://localhost:8088/zgr-springmvc
后記 配置的過程并沒有這么順利,說說遇到的問題: 1 網(wǎng)上有文章說2.1配置好后,啟動tomcat,訪問:http://localhost:8088/manager,在彈出界面輸入用戶名密碼,可以進入tomcat默認頁面。其實不行,會報403訪問被拒絕。而如果把zgr用戶的角色指定為'manager-gui',那么可以訪問上述鏈接。 2 2.3配置中url必須配置為http://ipaddr:port/manager/text。其實這樣看來,tomcat完全可以是遠程機器的。如果配置為http://ipaddr:port/manager/html,而zgr的roles無論指定為'manager-script'或者'manager-gui',都會報403錯誤。 3 3.2 Goals配置中tomcat7:redeploy,其中tomcat7是tomcat7-maven-plugin插件的Goal Prefix,redeploy是該插件的一個目標(biāo)。如果改為tomcat:redeploy,那么Maven默認找尋Goal Prefix是tomcat的插件,并執(zhí)行其redeploy目標(biāo)。 4 下載源碼包,使用命令mvn dependency:sources -DdownloadSources=true -DdownloadJavadocs=true,然后XXX-source.jar會下載到本地倉庫對應(yīng)目錄下。調(diào)試時,代碼運行到某jar包,eclipse會自動跳轉(zhuǎn)到其源代碼里,很方便。 個中教訓(xùn),只有親歷者才能明白。 參閱: http://blog.csdn.net/foxhlc/article/details/8725992 http://wenku.baidu.com/link?url=hIZIhpibzQYC5aTXvPF-abe1UfFxZXMbJ6-GOnUIcred7KCKt-UbfC5ATGDZaGvAnWyc9jv-j1FeYk-0ciwGayB5qoFMFmHe5vZteMB9caW |
|
|