【发布时间】:2016-08-23 09:22:02
【问题描述】:
我正在使用Eclipse 和Maven 构建一个Java Web 应用程序。该应用程序将在jboss (wildfly) 或tomcat 上运行。我想配置我的 Web 应用程序的上下文路径。
默认情况下,eclipse 将上下文路径设置为等于 eclipse 项目的名称(见 project -> properties -> web project settings)。但是,不管那里显示的上下文路径如何,当我部署我的 war 文件时,war 文件的名称将用作上下文路径,而不是 eclipse 中的设置。
想知道以下三种情况下如何配置上下文路径:
- 当我在 Eclipse 中运行我的 Web 项目时,使用 Eclipse 中的嵌入式服务器(例如 tomcat 或 wildfly)。在这种情况下,它似乎使用了项目名称。
- 当我构建一个战争(使用 maven)并使用 Eclipse 中的嵌入式服务器运行这个战争文件时。它似乎取了战争文件的名称。
- 当我构建战争并将其部署到外部 servlet 容器(在 eclipse 之外)时。它似乎也将战争名称作为上下文路径。
上下文路径选择平台/eclipse/servlet容器是否依赖?有没有人记录每个容器的标准行为?有没有办法为所有平台和 servlet 容器配置/设置上下文路径,无论战争是如何以及在何处构建/部署的,更重要的是,战争名称与上下文路径不同?
【问题讨论】:
-
至少你会在这里找到一些答案:stackoverflow.com/a/664089/2365727
-
@michaldo 恐怕那里的信息有点过时(2009 年),但至少在不使用 EAR 文件(而不是 WAR 文件)的情况下无法以与 servlet-container 无关的方式完成的概念) 很有帮助,谢谢
标签: java eclipse maven web-applications contextpath