【问题标题】:Is it possible to have two mainClass in the pom.xml or be able to run two classes in the same pom.xml?是否可以在 pom.xml 中有两个 mainClass 或者能够在同一个 pom.xml 中运行两个类?
【发布时间】:2014-10-27 19:06:07
【问题描述】:

我正在开发一个 java 项目。我们将持续集成与 maven 3、svn 和 Jenkins 一起使用。我们有一个实用的 java 项目,我们在其中实现了一些有用的功能。我们构建了一个 jenkins 任务来运行这个项目中的 mainClass。这是项目 pom.xml 上的代码 sn-p :

<plugin>
           ..
                <artifactId>exec-maven-plugin</artifactId>
                <version>1.2.1</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>java</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <mainClass>com.ent.uti.Cleaner</mainClass>
                    <arguments>
                        <argument>value1</argument>
                        <argument>value2</argument>
                    </arguments>
                </configuration>
            </plugin>

这个类在jenkins任务配置中执行:

mvn exec:java -o -f cleaner/pom.xml 

我想知道我是否可以在同一个项目中实现一些功能并在 Jenkins 中添加另一个任务? 是否可以在同一个 pom.xml 配置中有两个主要类?

我知道我可以创建另一个项目并在 pom.xml 中配置一个 mainClass。我认为这样做不是一个好主意。这两个任务是独立的,所以不适合一个接一个地运行两个类。

感谢阅读。

【问题讨论】:

  • 您可以使用多个 &lt;execution&gt; 块。

标签: java xml maven jenkins pom.xml


【解决方案1】:

您可以为此目的使用配置文件。所有详细信息都可以在这里找到:http://www.jpeterson.com/2009/08/25/using-a-maven-profile-to-run-a-test-program/

然后你的命令行将如下所示:

mvn -P program1 exec:java -o -f cleaner/pom.xml

mvn -P program2 exec:java -o -f cleaner/pom.xml

【讨论】:

  • 谢谢我正在检查它
  • Nomoa 感谢您的回答。但我面临另一个问题。 mvn 命令已经使用了一个 profile 选项来加载不同的文件配置(这里的 profile 在 settings.xml 中定义)。我想我必须寻找另一个解决方案。也许是为了创建另一个项目。
  • 您可以在命令行中激活多个配置文件:mvn -Pprof1,prof2。您还可以查看@chrylis 提出的解决方案(参见他的评论)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-03-18
  • 1970-01-01
  • 2013-12-29
  • 1970-01-01
  • 1970-01-01
  • 2021-12-08
  • 1970-01-01
相关资源
最近更新 更多