如何在Java web应用程序中设置上下文路径?

如何在Java web应用程序中设置上下文路径?,java,maven,Java,Maven,我想知道如何在java web应用程序中设置上下文路径。 更准确地说,对于maven项目,上下文路径是否从pom.xml文件中设置? 上下文路径值是指web应用程序中的任何位置,还是仅指WAR文件的名称? WAR文件的名称和上下文路径是否可能不同?上下文路径是WAR文件的名称,不管项目是通过ant、maven、gradle或其他方式构建的。如果您想更改应用程序的上下文路径,那么最简单的方法就是更改生成的war的名称。在maven中,这可以通过插件完成,下面是一个示例: .添加答案以提供完整的详

我想知道如何在java web应用程序中设置上下文路径。
更准确地说,对于maven项目,上下文路径是否从pom.xml文件中设置?
上下文路径值是指web应用程序中的任何位置,还是仅指WAR文件的名称?

WAR文件的名称和上下文路径是否可能不同?

上下文路径是WAR文件的名称,不管项目是通过ant、maven、gradle或其他方式构建的。如果您想更改应用程序的上下文路径,那么最简单的方法就是更改生成的war的名称。在maven中,这可以通过插件完成,下面是一个示例:



.

添加答案以提供完整的详细信息

有三种方法可以做到这一点:

1。如果您没有使用Eclipse/MyEclipse将应用程序部署到应用服务器上-

您需要使用maven war插件,您可以在配置部分指定warName

<plugin>
    <artifactId>maven-war-plugin</artifactId>
    <version>3.0.0</version>
    <configuration>
        <warName>customwarname</warName>
    </configuration>
</plugin>
重新启动Eclipse,然后导航到项目属性、属性->Web以查看根上下文值中反映的更改,或者导航到项目的部署程序集以查看更改

请注意,可以使用m2eclipse通过添加新插件来实现上述功能

3。特定于应用程序服务器:
您应该更愿意遵循服务器无关的方法,但如果需要这样做,则可以在特定于服务器的配置文件中配置根上下文url。您可以找到详细的方法

我正在使用Eclipse/Maven/Wildfly,唯一的解决方案是在“web-INF”文件夹中创建一个文件“jboss web.xml”,插入下面的内容

<?xml version="1.0" encoding="UTF-8"?>
<jboss-web>
    <context-root>MyContextName</context-root>
</jboss-web>

MyContextName

我可以得到默认情况下如何初始化上下文路径的答案吗。就像我在问题中提供的maven示例一样,我不知道为什么,但在Eclipse中,有时我必须手动编辑
.settings/org.Eclipse.wst.common.component
,以获得正确的结果。
   mvn eclipse:eclipse -Dwtpversion=2.0
<?xml version="1.0" encoding="UTF-8"?>
<jboss-web>
    <context-root>MyContextName</context-root>
</jboss-web>