簡體   English   中英

maven程序集插件不包括.gitignore

[英]maven assembly plugin excludes .gitignore

Maven程序集插件在最終的zip包中排除了.gitignore文件。 如何在最終輸出zip中包含.gitignore? 我試過包含** / *,但沒有用。

我的匯編文件:

<id>assembly</id>
<includeBaseDirectory>false</includeBaseDirectory>
<formats>
    <format>zip</format>
</formats>
<fileSets>
    <fileSet>
        <directory>${project.build.directory}/work</directory>
        <outputDirectory>/</outputDirectory>
        <excludes>
            <exclude>How*.html</exclude>
        </excludes>
    </fileSet>
</fileSets>`

程序集插件:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>2.5.5</version>
    <configuration>
        <descriptors>
            <descriptor>assembly/config.xml</descriptor>
        </descriptors>
    </configuration>
    <executions>
        <execution>
            <id>build-archive</id>
            <phase>package</phase>
            <goals>
                <goal>single</goal>
            </goals>
        </execution>
    </executions>
</plugin>

經過一些研究,我發現.gitignore和其他源存儲庫控制文件(.svn)被排除在最終包中。 Maven默認執行此操作。 我必須顯式設置標志 - false以包含.gitignore文件。

根據maven文檔 - useDefaultExcludes -

在計算受此集合影響的文件時,是否應使用標准排除模式(如匹配CVS和Subversion元數據文件的模式)。 為了向后兼容,默認值為true

三點建議:

1-在程序集文件中的fileSet旁邊嘗試文件元素。 它指定要包含在程序集中的單個文件。 通過提供一個或多個文件子元素來指定文件

2-正確設置baseDirectory。 例如

<baseDirectory>../</baseDirectory>

3-或者,將includeBaseDirectory設置為true

<includeBaseDirectory>true</includeBaseDirectory>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM