我目前正在使用 Spring Roo 构建一个相当简单的 Web 应用程序。然而,Spring 应用程序似乎默认部署到“/{app name}”,而不是“/”作为顶级目录。也就是说, Controller 由“/{app name}/person”映射,而不仅仅是“/person”。在四处闲逛之后,我看不出在哪里可以解决这个问题。它是某处的设置吗?
最佳答案
基本路径由应用程序服务器定义,而不是应用程序本身。 在 pom.xml 中,覆盖以下插件:
maven-war-plugin - mvn package, mvn tomcat:run-war
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.2</version>
<configuration>
<warName>ROOT</warName>
<!-- exclude test files from war package -->
<packagingExcludes>src/test/**</packagingExcludes>
</configuration>
</plugin>
tomcat-maven-plugin - mvn tomcat:run
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
<version>1.1</version>
<configuration>
<path>/</path>
</configuration>
</plugin>
org.mortbay.jetty - mvn jetty:run
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>8.0.4.v20111024</version>
<configuration>
<webAppConfig>
<contextPath>/</contextPath>
</webAppConfig>
</configuration>
</plugin>
关于tomcat - Spring Roo "Base"URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12116458/