如何使用maven程序集插件过滤Shell脚本

时间:2011-03-24 06:55:15

标签: maven maven-assembly-plugin

我正在尝试使用maven程序集插件过滤我的shell脚本。正确过滤其他属性和xml文件。但是,我在shell脚本的日志中收到以下消息。

相关的汇编描述符。

        <file>
        <source>src/main/config/default/buildcron.csh</source>
        <outputDirectory>/bin</outputDirectory>
        <filtered>true</filtered>
    </file>

这是不在日志中过滤上述脚本的消息。 file buildcron.csh has a filtered file extension。有没有办法改变这种默认行为?

PS:我看到与txt文件类似的行为。

编辑:这是从POM.xml中使用的插件

    <plugin>
            <artifactId>maven-assembly-plugin</artifactId>

            <executions>

                <execution>
                    <id>make-assembly</id>
                    <phase>install</phase>

                    <goals>
                        <goal>single</goal>
                    </goals>
                </execution>
            </executions>

            <configuration>
                <filters>
                    <filter>env/${env}.properties</filter>
                </filters>
                <descriptors>
                    <descriptor>src/main/assembly/myapp-server.xml</descriptor>
                </descriptors>
            </configuration>
        </plugin>


    </plugins>


</build>

谢谢, Prabhjot

3 个答案:

答案 0 :(得分:2)

您必须在描述符中定义一个id。

<assembly>
   <id>conf</id>
...
</assembly>

答案 1 :(得分:0)

也许您正在遇到this thread中讨论的问题。也许有些财产正在与pom发生冲突。

答案 2 :(得分:0)

我还有一个问题。目前,我正在汇编插件中过滤文件(逻辑在汇编描述符中)。但是,这些属性文件只能转到zip文件夹(包含配置文件,shell脚本,从属jar)。正在生成的单独的应用程序jar默认情况下没有配置文件。我将再次编写单独的逻辑(在POM xml中),以生成特定环境的配置文件。

有没有办法避免编写重复的逻辑?