我只是想了解一下,因为我从另一个问题中获得了代码,并且工作正常,但我不了解此操作的流程。
这是我对使用以下配置的mvn tomcat7:run时对Tomcat 7的Apache Maven Tomcat插件的理解:
<plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.0-SNAPSHOT</version> <configuration> <path>/${project.build.finalName}</path> </configuration> </plugin>
它会使用默认配置创建一个新的Tomcat 7实例,然后在该实例中将项目war文件用作已部署的项目,对吗,如果我输入错了,请更正我,或者请有人向我描述此过程的工作方式,谢谢预先。
pom.xml的tomcat7-maven- plugin依赖于Tomcat的捆绑。Maven下载它们,然后该插件使用Web项目启动嵌入式Tomcat实例。
pom.xml
tomcat7-maven- plugin
mvn -X tomcat7:run打印配置。一些有趣的部分:
mvn -X tomcat7:run
[INFO] Preparing tomcat7:run [DEBUG] (s) resources = [Resource {targetPath: null, filtering: false, FileSet {directory: /workspace/webtest1/src/main/resources, PatternSet [includes: {}, excludes: {}]}}] ... [DEBUG] (f) additionalConfigFilesDir = /workspace/webtest1/src/main/tomcatconf [DEBUG] (f) configurationDir = /workspace/webtest1/target/tomcat ... [DEBUG] (f) path = /webtest1 ... [DEBUG] (f) port = 8080 [DEBUG] (f) project = ...:webtest1:0.0.1-SNAPSHOT @ /workspace/webtest1/pom.xml ... [DEBUG] (f) warSourceDirectory = /workspace/webtest1/src/main/webapp ... [INFO] Creating Tomcat server configuration at /workspace/webtest1/target/tomcat ... [DEBUG] adding classPathElementFile file:/workspace/webtest1/target/classes/ [DEBUG] add dependency to webapploader org.slf4j:slf4j-api:1.5.6:compile ...
warSourceDirectory指向src(not target),因此它可以像通常的动态Web项目一样运行,您可以更改JSP,HTML并立即看到它。因此,该target/tomcat/webapps文件夹为空。
warSourceDirectory
src
target
target/tomcat/webapps
v2.0站点比2.0-SNAPSHOT站点包含有关配置的更详细的文档:http : //mojo.codehaus.org/tomcat-maven- plugin/plugin-info.html。