【问题标题】:How to avoid appending webapp name in the url?如何避免在 url 中附加 webapp 名称?
【发布时间】:2016-08-15 14:48:33
【问题描述】:

我浏览了链接deploy war file on Tomcat and run without project name,发现被问到的问题与我的问题完全相同。

但答案让我有点困惑。 所以首先我想知道这是否可以通过完全不修改Tomcat安装目录来实现!如果是,请建议我实现目标的具体方法。

另外,我的环境设置就像我在 maven 的帮助下进行战争一样。 而且,服务器路径(即 catalina.base)和部署路径在 Eclipse IDE 中的服务器视图中设置为我的工作区。

【问题讨论】:

    标签: java eclipse maven tomcat pom.xml


    【解决方案1】:

    通过阅读以上链接deploy war file on Tomcat and run without project name

    您可以简单地删除其他应用程序(从 tomcat 的 webapps 目录中)并将应用程序的名称更改为 ROOT 并将其部署到 tomcat。

    如果是 maven 项目,请将其在 pom.xml(内部项目标签)中更改为:

    <project ...>
        <groupId>UR_PKG_NAME</groupId>
        <artifactId>ROOT</artifactId>
        <version>1.0-SNAPSHOT</version>
        <packaging>war</packaging>
        <build>
        <finalName>ROOT</finalName>
        .
        .
        .
    </project>
    

    另外你需要在 pom.xml(在 tomcat7 插件配置标签内)提供正在运行的 tomcat 服务器的 Url 为:

    <url>http://IP:PORT/manager/text</url>
    <server>tomcat</server><!-- the name of server in your maven settings.xml -->
    <update>True</update> 
    

    【讨论】:

    • 我尝试了你建议的东西。基本上我将 artifactId 从我的项目名称更改为 ROOT 并且构建标签的结构如下: ${project.artifactId}${project.basedir} /src/main/resources
    • 构建标签也由几个插件组成,其中之一是: org.apache.maven.pluginsmaven-war-plugin${maven-war-plugin.version}${project.version}-${BUILD_NUMBER}${build.timestamp}
    • 最重要的是,具有路径的部署目录的工作区 PerforceOSSPrivate\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps 包含两个文件夹,即 projectName(Containing META-INF & WEB-INF)和ROOT(包含WEB-INF)。
    • 你的意思是...... org.apache.tomcat.maventomcat7-maven-plugin${tomcat7-maven-plugin.version}8080/ ????
    • 中删除 并添加答案中指定的 url、server 和 update(optional) 标签。 /${project.build.finalName}
    猜你喜欢
    • 2010-10-22
    • 1970-01-01
    • 1970-01-01
    • 2023-03-29
    • 2019-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-25
    相关资源
    最近更新 更多