相关疑难解决方法(0)

我可以让一个maven配置文件激活另一个吗?

我有2个maven2配置文件,selenium和jspc.现在对于"selenium",id喜欢隐式激活"jspc",这样我就不必从命令行编写mvn -Pselenium,jspc了.这可能吗 ?

java maven-2

68
推荐指数
1
解决办法
3万
查看次数

maven profile依赖

我有一个maven模块,有2个配置文件profile-a和profile-b

profile-a可以独立使用,但profile-b应该与profile-a一起运行

mvn install -P profile-a                   // valid
mvn install -P profile-a,profile-b         // valid
mvn install -P profile-b                   // INVALID
Run Code Online (Sandbox Code Playgroud)

反正是为了确保用户不能只使用profile-b安装模块?如果profile-b单独使用,还是自动激活配置文件-a?

maven-2 profiles maven

10
推荐指数
1
解决办法
5901
查看次数

从父配置文件激活子配置文件

我有以下父pom.xml文件:

<profile>
    <id>build_full</id>
    <activation>
        <activeByDefault>true</activeByDefault>
    </activation>
    <modules>
        <module>mymodule_interface</module>
        <module>mymodule_switch</module>
        <module>mymodule_switch_simulator</module>
        <module>mymodule_switch_controller</module>
        <module>mymodule_server</module>
    </modules>
</profile>
Run Code Online (Sandbox Code Playgroud)

在我的孩子pom中mymodule_server,我有以下几点:

<profile>
    <id>subprofile</id>
    <modules>
        <module>...various modules...</module>
    </modules>
</profile>  
<profile>
    <id>default</id>
    <activation>
        <activeByDefault>true</activeByDefault>
    </activation>
    <modules>
        <module>...various modules...</module>
    </modules>
</profile>  
Run Code Online (Sandbox Code Playgroud)

当我调用maven:时 mvn -P build_full,我可以强制子模块(mymodule_server)使用配置文件subprofile而不是default吗?

maven-3 maven maven-profiles

9
推荐指数
1
解决办法
4347
查看次数

Maven - 无法在多模块项目中激活配置文件

我在使用Maven配置项目时遇到了一些困难,需要一些帮助:)

比方说,我有一个多模块项目,有模块A和B(还有大约20个其他模块),但它们都继承了一些"root"pom.

我还有一个自定义maven插件,只能为模块A启用.

插件应该以相同的方式运行所有模块,因此我将配置放在根pom中.

现在,插件在配置文件中定义,以便仅在我明确要求时才会激活它:

mvn test -PrunMyPlugin
Run Code Online (Sandbox Code Playgroud)

如果我从根目录运行此命令并且我正在模块A的目录中运行,这应该可以工作.在模块B中,无论此配置文件如何,插件都不应运行.

另一方面

mvn test
Run Code Online (Sandbox Code Playgroud)

永远不应该调用插件.

我试图在属性上使用激活,但它对我不起作用.当我需要为每个具体模块配置插件并将所有配置保留在根pom中时,我试图避免这种情况.

有人可以提供一些如何做到这一点的简单例子吗?任何帮助都非常感谢.

提前致谢

java maven

7
推荐指数
1
解决办法
4722
查看次数

Maven中的Meta配置文件

我正在寻找一种方法来创建只在Maven中激活子配置文件的元配置文件.我们来看一个非常具体的例子.我有以下个人资料:

  • "服务器JBoss的"
  • "服务器雄猫"
  • "数据库HSQL"
  • "数据库的Oracle"

要构建项目,您必须为服务器选择一个配置文件,为数据库选择一个配置文件.我想创建两个"元配置文件":

  • "dev"=>"server-tomcat","database-hsql"
  • "prod"=>"server-jboss","database-oracle"

第一个想法是通过属性激活子配置文件:

<profile>
   <id>database-oracle</id>
   <activation>
     <property>
       <name>prod</name>
     </property>
   </activation>
</profile>
Run Code Online (Sandbox Code Playgroud)

但是这样,我无法在元配置文件之间共享子配置文件.例如,我希望我的配置文件"database-oracle"由"pre-prod"和"prod"元配置文件激活.

注意:我的子配置文件只包含属性.它们用于过滤资源和子poms.这就是为什么我认为可以解决这种特殊情况的原因.

对我来说理想的情况是将它们外部化在外部属性文件中,但一次只有一个问题;)

profile maven-2

4
推荐指数
1
解决办法
918
查看次数

标签 统计

maven ×3

maven-2 ×3

java ×2

maven-3 ×1

maven-profiles ×1

profile ×1

profiles ×1