Yhzhtk / note

知识代码笔记
https://github.com/Yhzhtk/note/issues
MIT License
108 stars 11 forks source link

mvn 从项目创建原型 不包含 .gitignore #37

Open Yhzhtk opened 8 years ago

Yhzhtk commented 8 years ago

问题

使用 mvn archetype:create-from-project 创建原型,最后得到的原型中不会包含 .gitignore,即便设置了 fileSets 也不会生效。

<fileSet>
  <directory></directory>
  <includes>
    <include>.gitignore</include>
  </includes>
</fileSet>

原因

maven-resources-plugin 2.7 插件的 bug,改成使用 2.6 版本就可以了。

<build>
    <pluginManagement>
        <plugins>
            <plugin>
                <artifactId>maven-resources-plugin</artifactId>
                <version>2.6</version>
            </plugin>
        </plugins>
    </pluginManagement>
</build>

还有一种办法是替换 plexus-utils

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-resources-plugin</artifactId>
    <version>2.7</version>
    <dependencies>
        <!-- it's for fixing maven-resources-plugin 2.7 MRESOURCES-190 -->
        <dependency>
            <groupId>org.codehaus.plexus</groupId>
            <artifactId>plexus-utils</artifactId>
            <!-- this is last 2.x release -->
            <version>2.1</version>
        </dependency>
    </dependencies>
</plugin>

参考地址

问题找了我好久,最开始还以为是 fileSet 的问题。

http://www.azar.in/questions/2765490/maven-archetype-plugin-doesnt-let-resources-in-archetype-resources-through

https://issues.apache.org/jira/browse/ARCHETYPE-474