<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<!-- Required so that .gitignore gets included in archetypes; see https://issues.apache.org/jira/browse/MRESOURCES-190 -->
<addDefaultExcludes>false</addDefaultExcludes>
9条答案
按热度按时间w9apscun1#
这个错误似乎仍然存在于maven原型插件v3.0.1中。对于那些不想降级maven资源插件的人。我设法建立了一个或多或少丑陋的变通方案。
首先将archetype-resources/.gitignore重命名为
然后在
archetype-metadata.xml
add中生成原型时,maven将首先复制
__gitignore__
,然后查看__[file]__
语法,并将其替换为默认值“.gitignore”mbjcgjjk2#
这个解决方案适用于即将到来的maven资源插件v3.0.0(在发布这个的时候还没有发布;当前仍然是2.7)从https://issues.apache.org/jira/browse/MRESOURCES-190似乎比阻止版本升级更好:
mitkmikd3#
将
fileSet
条目添加到src/main/resources/META-INF/maven/archetype-metadata.xml
,并使用空目录标记:这会将包含的文件从
src/main/resources/archetype-resources
复制到项目根目录。new9mtju4#
通过启动Maven build on debug(带-X选项)检查您的maven资源插件版本。如果您使用的是2.7,there is a regression where .gitignore files are silently ignored。
在这种情况下,您必须在pom.xml中显式使用Python 2.6:
gywdnpxw5#
**ARCHETYPE/issues/ARCHETYPE-505**显示这个问题在当前版本的插件和maven中已经彻底被破坏了。没有解决方法可以帮助解决这个问题。
jmp7cifd6#
对我来说非常有效的解决方案是使用protetype post install groovy脚本。
在原型项目的resources文件夹中创建一个文件
META-INF/archetype-post-generate.groovy
。添加此代码:
在
archetype-metadata.xml
文件中包含模板.gitignore.tmpl
文件。我有maven资源插件的问题,因此使用groovy脚本解决方案。
soat7uwm7#
在寻找这个问题的解决方案时,我们去了maven-archetype-plugin的FAQ部分,很明显,版本3.2.1支持这种情况,也就是说,我们现在可以包含. gitignore。为此,请配置 * maven-resources * 和 * maven-archtype-plugin*:
图片来源:https://maven.apache.org/archetype/maven-archetype-plugin/faq.html#excludes
62lalag48#
降级
maven-resources-plugin
的替代方法是强制执行plexus-utils
版本,该版本实际上具有回归:eufgjt7s9#
该漏洞仍然存在于最新的maven原型插件2.4和maven资源插件3.0.1中。
解决办法是这样的:
并且在生成的pom.xml中应该添加