我们将开始使用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)。
最初,我一直在寻找一种从配置文件中明确触发不同配置文件的方法。这不是一种选择。此外,配置文件似乎没有办法从祖先配置文件继承。
我的问题:为什么这不是一个好主意?
答案 0 :(得分:1)
我不清楚你的构建,但20多个配置文件似乎很不寻常。也许您可以从此扩展程序中受益:https://github.com/sviperll/ozymandias/tree/master/maven-profiledep-extension