Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在Tomcat中为WAR版本名设置上下文路径_Java_Maven_Tomcat_Contextpath - Fatal编程技术网

Java 在Tomcat中为WAR版本名设置上下文路径

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部分

我正在使用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
部分中使用
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>