maven遠程部署到tomcat8服務器


maven遠程部署到tomcat8服務器

環境准備

  1. linux服務器一台
  2. 服務器安裝JDK
  3. 服務器安裝Tomcat

服務器Tomcat8配置

  1. 添加Tomcat權限
    配置文件路徑: tomcat/conf/tomcat-users.xml
    <tomcat-users> </tomcat-users>標簽之間添加如下內容:
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<user username="yourname" password="yourpassword" roles="manager-gui,manager-script"/>
  1. 修改部署IP限制
    默認只能由本地IP進行部署,這里需要將其設置為任意IP都可部署
    配置文件路徑: tomcat/webapps/manager/META-INF/context.xml
<Context antiResourceLocking="false" privileged="true" >
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
  <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>

改為

<Context antiResourceLocking="false" privileged="true" >
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="^.*$" />
  <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>

這里是修改allow屬性的正則表達式,使之可以匹配任意IP地址

Maven項目POM.XML文件配置

添加maven-tomcat8插件

  <pluginRepositories>
    <pluginRepository>
      <id>tomcat8-plugin</id>
      <url>https://artifacts.alfresco.com/nexus/content/repositories/public/</url>
    </pluginRepository>
  </pluginRepositories>

  <build>
    <plugins>
      <!-- 配置Tomcat8插件 -->
      <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat8-maven-plugin</artifactId>
        <version>3.0-r1756463</version>
        <configuration>
          <!-- 將IP改為主機IP,其他不變 -->
          <url>http://IP:8080/manager/text</url>
          <!-- 項目名稱,訪問路徑為  localhost:8080/projectName -->
          <!-- 當設置為 / 時, 即為 localhost:8080/, 但是注意會覆蓋ROOT項目 -->
          <path>/projectName</path>
          <!-- tomcat賬號密碼 -->
          <username>yourname</username>
          <password>yourpassword</password>
        </configuration>
      </plugin>
    </plugins>
  </build>

部署命令

部署時需要服務器先啟動tomcat

  1. 第一次部署 mvn tomcat8:deploy
  2. 再次部署 mvn tomcat8:redeploy
    注意,當部署到 / 時,應使用再次部署命令,因為Tomcat自帶一個ROOT項目


免責聲明!

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



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