Java 在Tomcat中为WAR版本名设置上下文路径
我正在使用Maven构建我们的应用程序。Java 在Tomcat中为WAR版本名设置上下文路径,java,maven,tomcat,contextpath,Java,Maven,Tomcat,Contextpath,我正在使用Maven构建我们的应用程序。 因此war名称将是MyTest-1.00-SNAPSHOT1.0 //localhost:8080/MyTest-1.00-SNAPSHOT1.0 但是我需要将部署WAR名称的上下文路径MyTest event设置为MyTest-1.00-SNAPSHOT1.0。 我需要的网址将是 //本地主机:8080/MyTest 始终,即使战争名称有版本等 建议我实现这个场景。最好的方法是直接生成名为MyTest.war的war文件。为此,您可以在build部分
因此war名称将是
MyTest-1.00-SNAPSHOT1.0
//localhost:8080/MyTest-1.00-SNAPSHOT1.0
但是我需要将部署WAR名称的上下文路径MyTest event设置为MyTest-1.00-SNAPSHOT1.0
。
我需要的网址将是
//本地主机:8080/MyTest
始终,即使战争名称有版本等
建议我实现这个场景。最好的方法是直接生成名为
MyTest.war的war文件。为此,您可以在build
部分中使用finalName
:
<build>
<finalName>MyTest.war</finalName>
...
</build>
from:在您的server.xml中,您可以在
下添加上下文:
- docBase=“fileName.war”
- path=“/path”
你的案子会是
您必须创建名为MyTest的war文件。war@atishshimpi否。即使部署的WAR文件名具有版本和snaphot,当点击URL时,我需要使用Mytest作为上下文路径。我不想更改创建的WAR名称。它将与版本和sanpshot一样。但我需要知道,在部署后,我需要使用静态上下文名称,即使在部署的WAR中有技术。然后,您必须禁用自动部署
,并自行配置上下文。但是你必须为每一个新版本更新它。如果启用了autoDeploy
,则context
是从文件名派生的。我没有使用autoDeploy。我试图将context.xml放在meta.INF中,但不起作用。有没有办法在java配置中定义context.xml。我们的应用程序基于Spring配置。我只想知道有没有办法在appconfigAFAIK中定义context.xml在这场战争中,我们没有任何东西可以包括在内。也许你可以使用tomcat maven插件,我想不出其他的东西了。(我编辑了我的答案以包含对插件的引用)
<project>
...
<build>
...
<plugins>
...
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<path>/mycontext</path>
</configuration>
</plugin>
...
</plugins>
...
</build>
...
</project>