天天看點

使用tomcat maven插件過程中的一些問題使用tomcat maven插件過程中的一些問題

使用tomcat maven插件過程中的一些問題

  1. tomcat7-maven-plugin中部分日志會丢失?

    使用的版本是2.2,列印不出MyBatis Mapper中的log,也就是無法跟蹤SQL,切換到tomcat6-maven-plugin就可以了。不知道為何,猜想可能是無法輸出動态代理類中的log?或者是哪裡可以配置?有知道的朋友希望可以留言告之~

  2. tomcat maven插件遠端部署注意事項
    1. 若報403錯誤,且使用的是Tomcat7,需要修改pom.xml中部署的url位址,将

      <url>http://localhost:8080/manager</url>

      改為

      <url>http://localhost:8080/manager/text</url>

      若使用的是Tomcat6,位址

      <url>http://localhost:8080/manager</url>

      。不要寫

      <url>http://localhost:8080/manager/html</url>

    2. 使用tomcat6:deploy部署完後,發現對類的修改(不包括方法屬性的添加)在tomcat debug時可以生效,但是不會影響到部署到tomcat上的檔案,是以當tomcat停跑後再啟動,會發現剛改的東西都不生效的,又需要redeploy一下,好像很奇怪的趕腳。
  3. 附上我安裝tomcat maven插件的過程

    pom配置:

<plugin>
    <groupId>org.apache.tomcat.maven</groupId>
    <artifactId>tomcat6-maven-plugin</artifactId>
    <version>2.0</version>
    <configuration>
        <url>http://localhost/manager</url><!--遠端部署的位址-->
        <path>/prototype</path><!--部署到webapp下的路徑-->
        <server>tomcat</server><!--定義的server id,驗證身份時會用到-->
        <uriEncoding>UTF-8</uriEncoding>
        <port>80</port>
    </configuration>
</plugin>
           

tomcat-users.xml中添加遠端部署的管理者賬号:

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

maven settings中添加認證資訊:

<server>
      <id>tomcat</id><!-- 與上面定義的server id對應-->
      <username>admin</username>
      <password>admin</password>
    </server>
           

這樣的配置既支援内嵌的tomcat運作(tomcat:run),也支援遠端部署到tomcat上運作。