Eclipse 指定SpringBootWar的上下文路径

Eclipse 指定SpringBootWar的上下文路径,eclipse,netbeans,spring-boot,Eclipse,Netbeans,Spring Boot,我有一个SpringBootWeb应用程序,可以作为WAR部署。现在,当我将其部署到Tomcat7服务器时,它使用war文件的名称作为上下文,例如/myartifactid-1.5.4.SNAPSHOT/。我想指定上下文路径,但是 server.contextPath=/mywebapp 似乎只适用于嵌入式tomcat。我添加了一个META-INF/context.xml,其中只包含以下内容 <?xml version="1.0" encoding="UTF-8"?> <Co

我有一个SpringBootWeb应用程序,可以作为WAR部署。现在,当我将其部署到Tomcat7服务器时,它使用war文件的名称作为上下文,例如/myartifactid-1.5.4.SNAPSHOT/。我想指定上下文路径,但是

server.contextPath=/mywebapp
似乎只适用于嵌入式tomcat。我添加了一个META-INF/context.xml,其中只包含以下内容

<?xml version="1.0" encoding="UTF-8"?>
<Context antiJARLocking="false" path="/mywebapp" />

但这并没有产生任何效果

编辑:这不是spring启动问题,而是与NetBeans的行为与Eclipse的不同有关。NetBeans显然可以识别context.xml中的context path参数,但Eclipse不能识别。在Eclipse中,您必须修改Web项目设置以设置上下文路径。

由于您将Spring Boot应用程序打包为war(而不是带有嵌入式tomcat容器的jar),因此上下文路径将是war的名称


例如,如果您将打包的应用程序命名为
mywebapp.war
,并将其放在Tomcat的webapps下,它将在
/mywebapp

下可用,我理解,我只是认为在context.xml中设置上下文路径将覆盖此内容。@GalenYoder我明白您的观点。但是,我以前没有这样做过,所以我不能向您提供更多关于它的详细信息。这不一定与Eclipse和Netbeans的行为差异有关:在没有IDE的情况下部署时,我会遇到同样的问题。