【问题标题】:Specify context-path for spring-boot WAR为 spring-boot WAR 指定上下文路径
【发布时间】:2014-10-29 04:58:23
【问题描述】:

我有一个部署为 WAR 的 Spring Boot Web 应用程序。现在,当我将它部署到我的 Tomcat 7 服务器时,它使用 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-boot 问题,而是与 NetBeans 与 Eclipse 的行为方式不同有关。 NetBeans 显然可以识别 context.xml 中的上下文路径参数,但 Eclipse 不能。在 Eclipse 中,您必须修改 Web Projects Settings 以设置上下文路径。 Changing Tomcat context path of web project in Eclipse

【问题讨论】:

  • 这不一定与 Eclipse 和 Netbeans 的行为差异有关:我在没有 IDE 的情况下部署时遇到了同样的问题。

标签: eclipse netbeans spring-boot


【解决方案1】:

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

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

【讨论】:

  • 我明白了,我只是认为在 context.xml 中设置上下文路径会覆盖这个。
  • @GalenYoder 我明白你的意思。但是我以前没有这样做过,所以我不能给你更多的细节
  • 我也在尝试设置它
猜你喜欢
  • 2015-07-19
  • 1970-01-01
  • 2019-08-22
  • 1970-01-01
  • 1970-01-01
  • 2015-08-09
  • 2015-09-09
  • 2018-08-17
  • 2017-10-31
相关资源
最近更新 更多