2014-03-02 33 views
0

当我执行mvn clean install时,我需要多次在同一个项目上产生相同的命令。
我的意思是,如果我执行mvn clean install一次,它应该在n个不同的命令窗口中开始n个项目的同时构建,其中n应该是用户可配置的。
我知道我们可以使用多模块项目来同时构建不同的相关项目。但是我需要同时建造同一个项目n次。任何想法?同时产生同一模块的多个maven版本

+0

你能解释一下为什么你需要这种东西吗?除此之外,使用同一本地存储库运行同步构建并不安全。 – khmarbaise

+0

我需要在n个不同的数据库模式上运行构建。 (可能高达10)。我可以使用teamcity来执行构建,这样构建可以同时运行而不会互相干扰。 – EmeraldTablet

+0

它是在不同的数据库上运行测试还是构建不同的发行版? –

回答

0

你可以让你的数据库连接配置Maven的:在你的unitils.properties

database.driverClassName=oracle.jdbc.driver.OracleDriver 
database.url=jdbc:oracle:thin:@yourmachine:1521:YOUR_DB 
database.userName=john 
database.password=secret 
database.schemaNames=${database.schemaNames} 

激活行家过滤器上的资源,在你的pom.xml:

<resource> 
    <directory>src/main/resources</directory> 
    <filtering>true</filtering> 
</resource> 

您可以为您的模式提供默认值

<properties> 
    <database.schemaNames>testschema1</database.schemaNames> 
</properties> 

一旦这样做,你可以直接在命令行配置模式:

mvn test -Ddatabase.schemaNames=testschema2 

你终于可以在你的TeamCity在不同的模式运行测试配置多个就业岗位。

希望有所帮助。

+0

感谢雨果的回复。我几乎在我的pom中有类似的配置。在团队城市中手动配置多个作业是唯一的选择?我想要的是,用户启动一次mvn clean install命令并触发多个构建,每个构建工作在不同的db架构上。 – EmeraldTablet

+0

这是我看到的最简单的方法。 –

相关问题