maven配置文件激活基于几个文件的存在

Syd*_*ney 5 maven

我想根据几个文件的存在激活一个配置文件.在下面的例子中,我想配置文件将被激活,如果这两个文件my.markeranother.marker存在.

    <activation>
        <file>
            <exists>${basedir}/my.marker</exists>
            <exists>${basedir}/another.marker</exists>
        </file>
    </activation>
Run Code Online (Sandbox Code Playgroud)

它不起作用,因为它对模式无效.有没有办法在不使用命令行属性的情况下做这样的事情?

Kon*_*zus 5

实际上,即使在 Maven 3.2.2 中解决了 MNG-4565,仍然无法检查多个文件的存在。这是因为 POM 模型不允许多个file或多个exists元素(https://issues.apache.org/jira/browse/MNG-5909)。即使混合existsmissing在一个file元素中也不起作用(因为如果exists元素在那里,它将只被考虑而兄弟missing元素将被忽略,https://issues.apache.org/jira/browse/MNG-5910


Mic*_*ski -1

不幸的是,您暂时无法执行此操作。有一张可以通过使用多个激活条件来解决您的问题,但仍未解决。

编辑:Maven 有一个问题,所以你不能这样做。然而现在,从 3.2.2 版本开始,它应该通过使用多个激活条件来工作。

感谢尼古拉斯·戴利指出了这一点。