[英]How to remove tomcat plugin from Maven
我有一個Maven項目,它與tomcat 7插件結合在一起。 每當我執行maven時:將其生成的文件安裝在war文件中,並將其放置在tomcat Web應用程序文件夾中,然后我可以使用localhost:8080進行訪問
現在我想將tomcat7更改為tomcat 8,並且還想單獨運行tomcat。
現在我將Tomcat7插件與Maven一起使用,我不想與Maven一起使用Tomcat 7,我想使用系統中的Tomcat 8。
怎么做?
對於我的新tomcat服務器,可以告訴maven將生成的war文件放置到新的tomcat服務器Webapps文件夾中。
請找到我下面的tomcat插件配置的pom.xml
<!-- Used by embedded Tomcat to move context.xml for JNDI resources -->
<!-- Configuration inherited from parent -->
<plugin>
<artifactId>maven-resources-plugin</artifactId>
</plugin>
<!-- Main configuration inherited from parent -->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<configuration>
<path>/</path>
<port>${httpPort}</port>
<httpsPort>${httpsPort}</httpsPort>
</configuration>
</plugin>
下面是我的ant腳本,它將有助於在嵌入式tomcat中部署war文件
<target name="tomcat" >
<delete dir="war/WEB-INF/lib"/>
<artifact:mvn mavenHome="${maven.home}" fork="true">
<jvmarg value="-XX:MaxPermSize=256M" />
<jvmarg value="-Xmx512M" />
<jvmarg value="-Xdebug" />
<jvmarg value="-Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n" />
<jvmarg value="-javaagent:${spring.instrument.path}" />
<jvmarg value="-Druntime.environment=${runtime.environment}" />
<jvmarg value="-Ddatabase.user=${database.user}" />
<jvmarg value="-Ddatabase.password=${database.password}" />
<jvmarg value="-Ddatabase.driver=${database.driver}" />
<jvmarg value="-Ddatabase.url=${database.url}" />
<arg value="compile"/>
<arg value="war:exploded"/>
<arg value="tomcat7:run"/>
</artifact:mvn>
</target>
還有我的父母Pom.xml
<!-- Moves the context.xml file into a location that embedded Tomcat can read from -->
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.7</version>
<executions>
<execution>
<id>copy-resources</id>
<phase>validate</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/${tomcat.conf.dir.name}</outputDirectory>
<resources>
<resource>
<directory>${project.basedir}/../lib/${tomcat.conf.dir.name}</directory>
<filtering>true</filtering>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<!-- Main coniguration for embedded Tomcat -->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<!-- Useful when deploying to Tomcat elsewhere on the system -->
<update>true</update>
<url>http://127.0.0.1:8080/manager/text</url>
<username>tomcatscript</username>
<password>secret</password>
<additionalConfigFilesDir>${project.build.directory}/${tomcat.conf.dir.name}</additionalConfigFilesDir>
<!-- See the configuration in the keytool-maven-plugin -->
<keystorePass>broadleaf</keystorePass>
<keystoreFile>${webappDirectory}/WEB-INF/blc-example.keystore</keystoreFile>
<!-- System properties for JNDI data sources (database.url, database.driver etc) are passed in via -->
<!-- build.xml as -D arguments -->
</configuration>
<dependencies>
<!-- Other dependencies -->
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.4</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jdbc</artifactId>
<version>7.0.30</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
</dependencies>
</plugin>
現在,如何更改pom.xml或ant腳本以刪除嵌入式tomcat並包括本地tomcat當我運行我的ant腳本時,Maven應該能夠將其部署或重新部署到本地tomcat安裝中。
謝謝
首先,您需要刪除啟動Tomcat7的tomcat7-maven-plugin相關配置。
其次,您可以將tomcat7-maven-plugin配置為使用Tomcat X REST Management API,並按照http://www.disasterarea.co.uk/blog/deploying-to-tomcat-7-中的說明使用maven將戰爭部署到它。 with-maven /
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.