Maven条件插件执行带有扭曲

时间:2015-05-22 13:45:03

标签: java maven war

我们将开始使用maven-wagon-plugin通过SSH部署资产(js / css)。 我们有很多配置文件(> 20)。并非所有这些都将受到这种新部署的约束。

为了避免爆炸pom的大小,我提出了以下解决方案。

我在全局构建部分下添加以下内容:

                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>wagon-maven-plugin</artifactId>
                    <configuration>
                        <serverId>deploytarget</serverId>
                        <fromDir>src/main/resources/assets/</fromDir>
                        <url>scp://deploytarget.net:/var/www/assets/</url>
                    </configuration>
                    <executions>
                        <execution>
                            <id>push-assets</id>
                            <phase>${asset.phase}</phase>
                            <goals>
                                <goal>upload</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>

然后我在全局属性

下定义
<asset.phase></asset.phase>

对于那些需要此部署的配置文件,我添加以下内容:

<asset.phase>deploy</asset.phase>

这似乎有效:没有属性的配置文件根本不运行插件执行。此外,它可以节省20 * 18行(+ -20)。

最初,我一直在寻找一种从配置文件中明确触发不同配置文件的方法。这不是一种选择。此外,配置文件似乎没有办法从祖先配置文件继承。

我的问题:为什么这不是一个好主意?

1 个答案:

答案 0 :(得分:1)

我不清楚你的构建,但20多个配置文件似乎很不寻常。也许您可以从此扩展程序中受益:https://github.com/sviperll/ozymandias/tree/master/maven-profiledep-extension