当我使用tomcat 7 maven插件在eclipse中运行我的web应用程序时,我想要将一个额外的上下文部署到tomcat。在生产环境中,使用上下文配置
将此上下文映射到tomcat目录之外的目录 <Context path="/userimages" docBase="C:/test/userimages">
</Context>
通过这种方式可以在
中找到http://wwww.myhost.com/userimages/test.jpg
我如何在webapp(eclipse,tomcat7 maven插件)的开发环境中实现同样的目标? 换句话说,我希望通过
访问该文件夹的内容http://localhost:8080/userimages
或
http://localhost:8080/myapp/userimages
答案 0 :(得分:1)
您应该配置tomcat7-maven-plugin插件。
尝试这种方式:
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.0</version>
<configuration>
<path>your_app_context_path</path>
<uriEncoding>utf-8</uriEncoding>
</configuration>
</plugin>
然后,您的所有网址都应以http://wwww.myhost.com/ your_app_context_path / ...
开头tomcat7:run目标的更多可选参数可在apache tomcat maven plugin document
找到答案 1 :(得分:0)
我发现了一种不能完全按照我原来想要做的解决方法(使用tomcat maven插件发布另一个上下文),但它在某种程度上解决了我的问题。我在应用程序的webapp文件夹中添加了一个文件夹“userimages”,在开发时使用了这个文件夹。我通过使用pom.xml中具有以下配置的“maven-war-plugin”阻止此文件夹进入战争并因此进入生产服务器
<build>
....
<plugins>
....
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.2</version>
<configuration>
<packagingExcludes>userimages/</packagingExcludes>
</configuration>
</plugin>
....
</plugins>
....
</build>