Java 如何从Maven中删除tomcat插件
我有一个maven项目,它与Tomcat7插件结合在一起。每当我执行maven时:在war文件中安装它的生成,并将它放在tomcatwebapps文件夹中,我可以使用localhost:8080访问它 现在我想将tomcat7改为Tomcat8,还想单独运行tomcat 现在我在maven中使用Tomcat7插件,我不想在maven中使用Tomcat7,我想在我的系统中使用Tomcat8 怎么做 对于我的新tomcat服务器,可以告诉maven将生成的war文件放到新的tomcat服务器webapps文件夹中 请在下面找到我关于tomcat插件配置的pom.xmlJava 如何从Maven中删除tomcat插件,java,eclipse,maven,tomcat,Java,Eclipse,Maven,Tomcat,我有一个maven项目,它与Tomcat7插件结合在一起。每当我执行maven时:在war文件中安装它的生成,并将它放在tomcatwebapps文件夹中,我可以使用localhost:8080访问它 现在我想将tomcat7改为Tomcat8,还想单独运行tomcat 现在我在maven中使用Tomcat7插件,我不想在maven中使用Tomcat7,我想在我的系统中使用Tomcat8 怎么做 对于我的新tomcat服务器,可以告诉maven将生成的war文件放到新的tomcat服务器weba
<!-- 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>
maven资源插件
org.apache.tomcat.maven
tomcat7 maven插件
/
${httpPort}
${httpsPort}
下面是我的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>
maven资源插件
2.7
复制资源
验证
复制资源
${project.build.directory}/${tomcat.conf.dir.name}
${project.basedir}/./lib/${tomcat.conf.dir.name}
符合事实的
org.apache.tomcat.maven
tomcat7 maven插件
2.2
符合事实的
http://127.0.0.1:8080/manager/text
tomcatscript
秘密
${project.build.directory}/${tomcat.conf.dir.name}
阔叶树
${webappDirectory}/WEB-INF/blc-example.keystore
公共dbcp
公共dbcp
1.4
罐子
编写
org.apache.tomcat
TomcatJDBC
7.0.30
罐子
编写
现在,我如何更改pom.xml或ant脚本以删除嵌入式tomcat并包含本地tomcat
当我运行ant脚本时,Maven应该能够将其部署或重新部署到本地tomcat安装
首先,您需要删除启动tomcat7的tomcat7 maven插件相关配置
其次,您可以将tomcat7 maven插件配置为使用TomcatX REST管理API,并通过使用maven将war部署到其中,如前所述。。。但是当你说“想单独保存tomcat”时,你真的不清楚你想要什么。你应该编辑你的问题,将pom.xml文件的相关部分包括进来。@Rob很快就会提供给你。@dcsohl我不想使用tomcat 7作为maven的插件,我想在我的系统中使用tomcat安装,该链接解释了如何使用嵌入式tomcat maven插件。。我想用maven删除tomcat插件并添加tomcat本地安装否,该链接解释了如何使用tomcat maven插件来部署到本地tomcat安装。为此,您只需指定配置选项:
url
、username
和password
。然后,运行mvntomcat7:deploy
。注意,当您使用tomcat7maven插件时,并不总是使用嵌入式tomcat7。只有在使用目标run
或其他方法时,才能使用嵌入式。目标部署
,取消部署
或重新部署
不使用嵌入式目标。尽管如此,tomcat7 maven插件确实依赖于嵌入式插件,因此它将下载到maven本地repo。但是,如果你执行我上面列出的目标,它将不会被使用。你能在回答中用更简短的话解释一下吗。。非常感谢。