3

我正在本地开发 Web 服务,使用 maven 构建并部署到 tomcat。我正在使用 maven 插件在本地运行,mvn tomcat:run用作我的运行配置。

现在,我的服务正在使用默认项目名称作为上下文路径进行部署:

http://localhost:8080/myArtifactId/servletPath

相反,我想部署以删除上下文路径,并通过配置 tomcat maven 插件部署到此 url :

http://localhost:8080/servletPath

根据本文档:http: //tomcat.apache.org/maven-plugin-2.1/tomcat7-maven-plugin/usage.html

我正在尝试这个:

        <plugin>
            <groupId>org.apache.tomcat.maven</groupId>
            <artifactId>tomcat7-maven-plugin</artifactId>
            <version>2.1</version>
            <configuration>
                <!-- Why isn't this working??? -->
                <path>/</path>
            </configuration>
        </plugin>

关于为什么我正在尝试的东西不起作用的任何想法,或者我可以采取不同的方式来解决这个问题?正如我所说,我正在尝试通过 maven 插件来做到这一点。

或者,有谁知道如何将其作为参数传递给运行配置?也许在命令行显式传递它会覆盖默认值。

更新:运行mvn tomcat7:runmvn clean tomcat7:run从命令行似乎可以按预期工作。但是当我Maven Build在 Eclipse 中使用运行配置运行时,无论我在pom.xml.

更新:这似乎是 Eclipse Maven 插件的问题。当我从命令行运行命令时,一切都按预期工作,但是当尝试使用 Tomcat7:run 目标添加 Eclipse/Maven 运行配置时,项目使用默认的工件 id 上下文路径继续运行。

4

1 回答 1

1

当遇到 maven 问题时,他们大多通过使用clean插件 ( mvn clean) 来解决,该插件会清除项目的工作目录。

http://maven.apache.org/plugins/maven-clean-plugin/

于 2013-10-04T18:03:19.660 回答