Maven入門示例(3):自動部署至外部Tomcat


         上一篇,介紹了如何創建Maven項目以及如何在內嵌的Tomcat中部署測試Web應用,本篇主要介紹如何將開發的應用程序自動部署至外部Tomcat。本例中使用的Tomcat版本為Tomcat 7。

1、  安裝Tomcat 7

1)  將Tomcat 7的安裝包解壓至C:\opensource,並將文件夾重命名為tomcat-7.0.34,得到的目錄結構如下

 

2)  新建系統變量CATALINA_HOME,值為:C:\opensource\tomcat-7.0.34

3)  在系統變量  Path的最后面添加%CATALINA_HOME%\lib; %CATALINA_HOME%\lib\servlet-api.jar;%CATALINA_HOME%\lib\jsp-api.jar   注意它們之間的分號,一定是英文的分號。

4)  Tomcat 7.0的管理員的配置,進入C:\opensource\tomcat-7.0.34(Tomcat目錄)下的conf目錄,編輯tomcat-users.xml,找到最后的:

<!--
<role rolename="tomcat"/>
<role rolename="role1"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/>

 -->

在上面這段后面  添加上:

<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<user username="admin" password="admin" roles="manager-gui,manager-script"/>

從添加的這段中可以看到管理員的用戶名和密碼,后面配置將會用到。

5)  進入Tomcat 目錄下的bin目錄,雙擊startup.bat   啟動Tomcat  在命令行窗口會出來英文提示。

6)  瀏覽器輸入:http://localhost:8080  可以看到Tomcat的歡迎頁面就說明配置成功了,點擊右上角上manager連接,輸入上面配置的用戶名和密碼,就可以進入管理頁面。

補充:使用外部的tomcat7 需要使用 tomcat-maven-plugin 的新版本,版本支持tomcat6和tomcat7,groupId也由org.codehaus.mojo改為org.apache.tomcat.maven。  可以參考看:

Maven的Tomcat插件地址為,http://tomcat.apache.org/maven-plugin.html。無需手動下載,按照本文配置,MyEclipse會自動下載到相應的tomcat-maven-plugin插件

2、修改項目的pom.xml  

1)在project的build節點下 添加tomcat-maven-plugin插件信息,如下寫法添加了tomcat6和tomcat7的插件,如只用1種可以只寫一個

  

  <plugins>  
        <plugin>  
            <groupId>org.apache.tomcat.maven</groupId>  
            <artifactId>tomcat6-maven-plugin</artifactId>  
            <version>2.0-SNAPSHOT</version>       
            <configuration>  
              <url>http://localhost:8080/manager/html</url>   
              <server>tomcat</server>  
            </configuration>         
        </plugin>  
        <plugin>  
            <groupId>org.apache.tomcat.maven</groupId>  
            <artifactId>tomcat7-maven-plugin</artifactId>  
            <version>2.0-SNAPSHOT</version>  
            <configuration>  
                <url>http://localhost:8080/manager/text</url>   
                <server>tomcat7</server> 
                <username>admin</username> 
                <password>admin</password>   
            </configuration>  
        </plugin>  
</plugins>  

--2.0-SNAPSHOT版本已經release了

2)  在project節點下,在插件倉庫(plugin repositories)和普通倉庫(repositories)中添加以下倉庫到pom.xml,保證maven可以從倉庫中下載到tomcat-maven-plugin插件,少添加了這段信息,會出現如下報錯信息:

No plugin found for prefix 'tomcat' in the current project and in the plug

 

<repositories>
<repository>

      <id>
      people.apache.snapshots
     </id>  

     <url>   
      http://repository.apache.org/content/groups/snapshots-group/  
    </url>  

    <releases>  
        <enabled>false</enabled>  
    </releases>  

    <snapshots>  
        <enabled>true</enabled>  
    </snapshots>  

</repository>  
</repositories>

 

<pluginRepositories>
<pluginRepository>  

    <id>apache.snapshots</id>  
    <name>Apache Snapshots</name>  

    <url> 
http://repository.apache.org/content/groups/snapshots-group/
</url> <releases> <enabled>false</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </pluginRepository> </pluginRepositories>

 3.配置setting.xml,修改%MAVEN_HOME%\conf\setting.xml(前提是在myeclipse preferences中maven啟用本地安裝版本並設置用戶setting.xml為本地conf下的setting.xml)。

在<servers>標簽中加入

<server>  
       <id>tomcat7</id>  
       <username>admin</username>  
       <password>admin</password>  
</server>  

注意這里用戶名、密碼必須為manager-gui角色的用戶,這里設置需要與之前tomcat配置時的角色分配對應起來。

4.啟動tomcat

運行請先啟動tomcat,在maven build的goals中輸入命令tomcat7:deploy即可發布,或在Run Configurations->Maven build新建一個命令,base directory里選擇你的web project,在Goals欄可填寫你所需要的命令,點擊Run或者Debug后,MyEclipse會自動下載所需的插件並在Console啟動Tomcat。

 

               

5、測試

打開瀏覽器,輸入http://localhost:8080/helloworld,即可見到發布的Helloworld頁面。同時,你也可以在C:\tomcat-7.0.34\webapps看到helloworld工程和helloworld.war包了。

 

 如果點擊run后,Console報錯,請參見下一篇錯誤排除


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM