【问题标题】:How to Filter Shell scripts using maven assembly plugin如何使用 Maven 程序集插件过滤 Shell 脚本
【发布时间】:2011-03-24 18:17:25
【问题描述】:

我正在尝试使用 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>

谢谢, 普拉布乔特

【问题讨论】:

  • 你能多输出一点吗? POM 片段?您使用的是哪个 Assembly 插件版本?你能给出完整的描述吗?
  • 已添加POM相关部分。
  • 您错过了 maven 程序集插件版本?你为什么在安装阶段配置你的程序集?您是否尝试过使用 fileSet 而不是单个文件来配置描述符中的过滤?
  • 我应该使用哪个版本?如果我不指定一个,它不会使用最新版本。我相信文件集不允许过滤。我以此为参考。 maven.apache.org/plugins/maven-assembly-plugin/examples/single/…
  • 好的,根据日志版本“2.2-beta-2”正在用于组装插件。

标签: maven maven-assembly-plugin


【解决方案1】:

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

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

【讨论】:

    【解决方案2】:

    也许您遇到了this thread 中讨论的问题。也许某些属性与 pom 发生冲突。

    【讨论】:

    • 抱歉,我无法访问该页面。能否请您在此处粘贴关键指针?
    【解决方案3】:

    我还有一个担心。目前,我在程序集插件中过滤文件(逻辑在程序集描述符中)。但是,这些属性文件只进入 zip 文件夹(包含配置文件、shell 脚本、依赖 jar)。正在生成的单独的应用程序 jar 默认没有配置文件。我必须再次编写单独的逻辑(在 POM xml 中)为特定环境生成配置文件。

    有什么办法可以避免写重复的逻辑?

    【讨论】:

      猜你喜欢
      • 2016-01-31
      • 1970-01-01
      • 1970-01-01
      • 2010-11-07
      • 2020-06-29
      • 2016-08-05
      • 2016-06-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多