Maven 网络应用未在本地部署 Tomcat

Maven web app not deploying in local Tomcat

我在 Eclipse Luna 上有一个 Web 应用程序项目(创建为动态 Web 项目)已有一段时间;为了测试,我曾经使用选项 "Run on server",并且它在我的 Tomcat 7 服务器上正确 运行。

但是现在,我已经对项目进行了 mavenized,我无法像以前那样轻松 运行 了。实际上甚至没有 "Run on server" 的选项,只有 "Run as Java Application/Applet" 如果我单击项目文件夹或 "Run as Maven install/build..." 如果我单击 pom.xml 文件。

有什么方法可以让我返回 运行 在我的本地服务器上安装我心爱的网络应用程序?

谢谢!

将此添加到您的 pom.xlm:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.tomcat.maven</groupId>
            <artifactId>tomcat7-maven-plugin</artifactId>
            <version>2.2</version>
            <configuration>
                <url>http://localhost:8080/manager/text</url>
                <server>${tomcat.server.name}</server>
                <webapps>
                    <webapp>
                        <groupId>com.group.id</groupId>
                        <artifactId>artifact</artifactId>
                        <version>1</version>
                        <type>war</type>
                        <asWebapp>true</asWebapp>
                        <path>/path</path>
                    </webapp>
                </webapps>
            </configuration>
        </plugin>
    </plugins>
</build>

在此之后,您必须在 Tomcat 配置中设置一些内容。我在 tomcat/conf/tomcat-users.xml 中设置了以下内容:

<tomcat-users>
...
<role rolename="manager-script" />
<role rolename="manager-gui" />
<user username="admin" password="admin" roles="manager-script,manager-gui"/>
</tomcat-users>

并在 Maven 的 settings.xml 文件 (~/.m2/settings.xml) 中设置 ${tomcat.server.name} 变量的值,以及一些其他内容:

<settings>
...
<profiles>
  <profile>
    <id>profile-1</id>
    <activation>
      <activeByDefault>true</activeByDefault>
    </activation>
    <properties>
       <tomcat.server.name>TomcatServer</tomcat.server.name>
    </properties>
    ...
  </profile>
</profiles>
<servers>
<server>
<id>TomcatServer</id>
<username>admin</username>
<password>admin</password>
</server>
</servers>
</settings>

在此之后,您将能够 运行、mvn clean install tomcat:deploymvn clean install tomcat:redeploy,然后 运行。

有关更多配置信息,请参阅 docs!