0

我想用 maven 2 运行 tomcat7,所以我尝试了 maven-t7-plugin,配置如下:

<plugin>
                <groupId>com.googlecode.t7mp</groupId>
                <artifactId>maven-t7-plugin</artifactId>
                <version>0.9.6</version>
                <configuration>
                     <tomcatHttpPort>8081</tomcatHttpPort>
                     <tomcatShutdownPort>8008</tomcatShutdownPort>
                     <tomcatVersion>7.0.22</tomcatVersion>                                     
                </configuration>
            </plugin> 

但是当尝试使用命令mvn t7:run 运行应用程序时

我可以看到服务器正常启动,没有问题:

Jan 4, 2012 12:50:22 PM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["http-bio-8081"]
Jan 4, 2012 12:50:22 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 1044 ms
Jan 4, 2012 12:50:22 PM org.apache.catalina.core.StandardService startInternal
INFO: Starting service Catalina
Jan 4, 2012 12:50:22 PM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.22
Jan 4, 2012 12:50:22 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-8081"]
Jan 4, 2012 12:50:22 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 62 ms

但是当尝试访问任何应用程序页面时,我得到的只是空白页面 我是否缺少任何配置,或者还有其他问题?

4

1 回答 1

2

t7mp 插件默认使用生成的战争的文件名作为上下文根。由于未部署默认错误页面,因此对所有其他路径的访问会导致空白页面。${artifactId}-${version}默认情况下,文件名和上下文路径,您可以通过finalName在 pom.xml 部分中设置元素来更改它build

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    ...
    <build>
        <finalName>contextRoot</finalName>
        ...
    </build>
</project>

您的应用程序现在可以在http://localhost:8081/contextRoot/而不是例如http://localhost:8081/application-1.0-SNAPSHOT/

于 2012-01-04T16:38:26.887 回答