maven 發佈項目到tomcat

http://xmfxue.blog.163.com/blog/static/109643150201141504115683/


http://stackoverflow.com/questions/13336816/tomcat7-maven-plugin-tomcatmanager-status-code403-reasonphraseforbbiden


第一種方法:修改tomcat目錄下的server.xml文件,在<host>結點加入

<Context path="/###" docBase="#:\##\##" debug="0" privileged="true">
</Context>
   其中path的值是訪問的路徑,docBase的值是存放項目的路徑,就是 跟alias有點像的

    第二種方法:把用maven生成的.war包放到tomcat的webapps目錄下,或者把生成的web項目文件放到tomcat的webapps目錄下,這個應該是最基本的方法啦~

    第三種方法:在tomcat/conf/Catalina/localhost目錄下,建立一個可以取任意名的.xml文件,內容與第一種方法的一樣:
<Context path="/###" docBase="#:\##\##" debug="0" privileged="true">
</Context>
    有些tomcat版本是沒有Catalina/localhost的。沒有的話就自己建一個吧。

    第四種是使用myeclipse的deploy功能發佈,也挺方便的。


 1.tomcat6.0以後的版本都沒有集成admin(管理端),需要獨立下載,下載後解壓到apache-tomcat-6.0.32\server\webapps\admin目錄下
 
2.如果現在啓動tomcat服務是無法登錄localhost:8080/admin和localhost:8080/manager的,需要配置apache-tomcat-6.0.32\conf\tomcat-users.xml文件,內容如下:
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
  <role rolename="tomcat"/>
  <role rolename="role1"/>
  <role rolename="manager"/>
  <role rolename="admin"/>
  <role rolename="manager-script"/>
  <user username="tomcat" password="tomcat" roles="tomcat"/>

  <user username="role1" password="tomcat" roles="role1"/>
  <user username="both" password="tomcat" roles="tomcat,role1"/>
  <user username="manager" password="manager" roles="manager"/>
  <user username="admin" password="admin" roles="manager-script"/>
</tomcat-users>
注意admin用戶和manager用戶不能是同一個人,否則同時訪問localhost:8080/admin和localhost:8080/manager時會有問題
 
3.tomcat的admin和manager配好後,啓動服務。
 
4.用maven2新建一個web項目,然後配置pom.xml文件
 
  4.1配置tomcat的manager
 <build>
  <plugins>
   <plugin>
    <groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.1</version>
    <configuration>
     <url>http://localhost:8080/manager/text</url>
     <server>myserver</server>
    </configuration>
   </plugin>
  </plugins>
 </build>
 
在settings.xml中,找到servers標籤,加入如下代碼:
<server>
  <id>myserver</id>
  <username>manager</username> <!-- tomcat的manager用戶名,見上面的tomcat-users.xml文件 -->
  <password>manager</password> <!-- tomcat的manager用戶登錄的密碼 -->
 </server>
 
4.2設置web項目的war包名(maven2打包和發佈到tomcat目錄下的war包名)
<build>
        <finalName>mycontext</finalName>
</build>
 
4.3可以將war包映射到tomcat的不同context
<plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>tomcat-maven-plugin</artifactId>
        <configuration>
                <path>/mycontext</path>
        </configuration>
</plugin>
 
5.用maven2發佈war包
  5.1發佈一個war文件
  mvn tomcat7:deploy
 
  5.2發佈一個張開的war
  mvn war:exploded tomcat:exploded

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