我在OSX中安装了Tomcat 7.0.59,但是在运行maven插件时,它说它正在运行7.0.47并且它在目标中创建了一个新的tomcat目录,并带有一些新的配置。 我只是想让它运行我在机器上安装的版本,使用$ CATALINA_HOME / conf下的配置,并将应用程序正常部署到$ CATALINA_HOME / webapps。
以下是运行插件时的消息:
[INFO] Running war on http://localhost:8080/xxx
[INFO] Creating Tomcat server configuration at /Users/abc/xxx/target/tomcat
[INFO] create webapp with contextPath: /xxx
INFO: Starting service Tomcat
Mar 19, 2015 3:12:45 PM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.47
Mar 19, 2015 3:12:50 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-8080"]
它创建了以下结构:
target/tomcat//conf:
logging.properties tomcat-users.xml web.xml
target/tomcat//logs:
access_log.2015-03-19
target/tomcat//webapps:
target/tomcat//work:
Tomcat
target/tomcat//work/Tomcat:
localhost
target/tomcat//work/Tomcat/localhost:
xxx
target/tomcat//work/Tomcat/localhost/xxx:
这是插件的配置:
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<url>http://localhost:8080/manager/text</url>
<server>localhost</server>
</configuration>
</plugin>
这是/Library/Tomcat/bin/version.sh的输出:
Using CATALINA_BASE: /Library/Tomcat
Using CATALINA_HOME: /Library/Tomcat
Using CATALINA_TMPDIR: /Library/Tomcat/temp
Using JRE_HOME: /Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home
Using CLASSPATH: /Library/Tomcat/bin/bootstrap.jar:/Library/Tomcat/bin/tomcat-juli.jar
Server version: Apache Tomcat/7.0.59
Server built: Jan 28 2015 15:51:10 UTC
Server number: 7.0.59.0
OS Name: Mac OS X
OS Version: 10.10.2
Architecture: x86_64
JVM Version: 1.8.0_40-b25
JVM Vendor: Oracle Corporation
答案 0 :(得分:3)
背后的原因是maven插件下载了自己的tomcat版本(与本地安装的tomcat无关)。
tomcat7-maven-plugin
v。2.2
依赖于Tomcat v。7.0.47
。
tomcat7-maven-plugin引用父项目tomcat-maven-plugin,它本身定义了正在使用的tomcat版本(<tomcat7Version>7.0.47</tomcat7Version>
)。只需看看POM XML。
答案 1 :(得分:0)
您可以安装最新版本的Tomcat(8.0.20),手动启动它,然后运行Tomcat 7 maven插件,没有任何问题。我的博客(http://blog.devcanvas.org/deploy-a-web-application-from-the-command-line-by-using-tomcat-maven-plugin/)上有一篇完整说明的文章。 尝试将brew用于Tomcat和maven。