【问题标题】:how can i use maven tomcat plugin for two different environment?我如何在两个不同的环境中使用 maven tomcat 插件?
【发布时间】:2011-09-15 15:04:16
【问题描述】:

在我的 tomcat 项目中,我有一个配置文件夹,路径为 src/main/tomcatconf

现在我想部署到 2 个不同的服务器。一个开发服务器和一个生产服务器。

我使用 mvn tomcat:run 运行我的开发服务器。即时运行我的服务器,一切正常。

现在我想添加生产服务器,使用不同的配置文件夹(即src/main/production/tomcatconf)并在我的文件系统中的Tomcat实例上部署.war(即/opt/tomcat6) 使用 mvn tomcat:deploy 命令。

我该怎么做?

【问题讨论】:

    标签: tomcat deployment configuration maven profile


    【解决方案1】:

    最后我使用了配置配置文件的 maven 资源插件。

    我已经制作了两个额外的文件夹:

    src/main/生产

    src/main/开发,

    然后我将 Meta-inf/persistence.xml 移动到这些文件夹中。

    然后我在我的 pom.xml 中添加这部分配置:

    <profiles>
        <profile>
            <id>development</id>
            <activation>
                <activeByDefault>true</activeByDefault>
                <property>
                    <name>environment.type</name>
                    <value>dev</value>
                </property>
            </activation>
            <build>
                <resources>
                    <resource>
                        <directory>src/main/resources</directory>
                    </resource>
                    <resource>
                        <directory>src/main/development</directory>
                    </resource>
                </resources>
            </build>
        </profile>
        <profile>
            <id>production</id>
            <activation>
                <property>
                    <name>environment.type</name>
                    <value>prod</value>
                </property>
            </activation>
            <build>
                <resources>
                    <resource>
                        <directory>src/main/resources</directory>
                    </resource>
                    <resource>
                        <directory>src/main/production</directory>
                    </resource>
                </resources>
            </build>
        </profile>
    
    </profiles>
    

    以这种方式,我有一个公共资源文件夹和一个基于环境类型的附加文件夹。

    现在当我跑步时 mvn tomcat:run -Denvironment.type=dev 我使用我的开发环境,当我运行时 mvn tomcat:run -Denvironment.type=prod 我使用我的生产环境。

    这种方法的唯一缺点是每次我想更改环境类型时都必须运行 mvn clean 构建正确的配置文件。

    如果您认为我错了或者您想提出另一种解决方案,请告诉我

    问候 安东尼奥·穆塞拉

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-07
      • 1970-01-01
      • 2013-06-06
      • 2012-01-03
      • 1970-01-01
      • 1970-01-01
      • 2015-12-15
      • 1970-01-01
      相关资源
      最近更新 更多