4

目前我的项目设置是这样的,当我在我的 maven 项目上进行清理和安装时,它会下载 pom.xml 中提到的 tomcat 版本并将war文件部署到它上面。

我需要更改配置,以便将战争文件部署到我手动下载的 tomcat 上,而不是一个 maven 下载。这是为了利用我为手动下载的 tomcat 配置的设置。

可能吗?如果是,如何?

4

2 回答 2

2

你可以试试tomcat-maven-plugin,它可以让你通过 context.xml、exploded war 或简单的 war 文件部署到现有的 tomcat 实例中。

于 2013-01-22T10:26:30.530 回答
1

我知道你可能想要一个Maven-only 答案 - 我也这样做了。但是,我发现最简单但最灵活的做法是使用 Maven 构建战争,并使用ANT. tomcat-maven-plugin 对我来说不够强大,因为我需要将 .war 部署到本地Tomcat安装和使用scp.

这是我的ANT build.xml文件的样子:

<?xml version="1.0"?>

<target name="deploy_local">
    <echo>Deploying .war to local Tomcat</echo>
    <copy file="target/My.war" todir="/tomcat/webapps">
    </copy>
</target>

<target name="deploy_production">
    <echo>Deploying .war to production Tomcat</echo>
    <move file="target/My.war" tofile="target/ROOT.war"/>
    <scp file="target/ROOT.war"
        trust="true"
        todir="me:password@154.14.232.122:/tomcat/webapps"
        port="22">
    </scp>
</target>

您可以看到我什至将 .war 文件从 My.war 重命名为 ROOT.war 以用于生产部署。

完整的过程是:mvn clean package然后运行本地或生产ANT目标以进行部署。

于 2013-01-22T11:56:00.550 回答