给定以下包含Maven程序集XML的依赖项...
<dependencySet>
<includes>
<include>com.company.product:library:jar:*:*</include>
</includes>..。为什么上面的过滤器没有包含没有分类器的library:jar?
[INFO] Reading assembly descriptor: assembly/release.xml
[WARNING] The following patterns were never triggered in this artifact inclusion filter:
o 'com.company.product:library:jar:*:*'在我的模式中使用额外的通配符的原因是,我还有一个配置文件,它使用分类器"qa“构建我的所有库。当我激活该配置文件时,一切都正常,但在默认配置文件(它构建没有分类器的库)下,它失败了。
如果我将过滤器更改为:
<include>com.company.product:library*</include>那么maven构建实际上就失败了,错误如下:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-assembly-
plugin:2.3:single (make-assembly) on project java-package: Failed to create
assembly: Error adding file 'com.company.product:library:jar:1.0.0-SNAPSHOT'
to archive: C:\Subversion\JavaProj\library\target\classes isn't a file. -> [Help 1]有人可以建议一个模式,其中将包括jars,无论有没有分类器?
发布于 2015-09-16 17:27:55
在pom.xml中检查您的程序集:您在<dependencies> -xml中引用的依赖项也在那里吗?
发布于 2016-04-18 21:13:36
面临着同样的问题。不知道为什么,但是maven-assembly-plugin 不包含compile作用域的依赖项,这是默认的。使其成为provided修复的组装。
例如,检查您的com.company.product:library依赖项,并尝试将<scope>provided</scope>添加到其中。然后,尝试列出所有库,而不是*。(您也可以尝试其中一个来检查解决方案)
发布于 2020-07-01 00:31:04
我最近在使用maven-assembly-plugin (3.3.0版)时遇到了同样的情况。我用来解决它的步骤是:
在使用插件时,我使用<scope>provided</scope>
dependencySet:<includes><include>[groupId]:[artifactId]:jar</include></includes>中添加了依赖项以匹配dependency<scope>provided</scope> (因为默认情况下,scope=runtime请参见https://maven.apache.org/plugins/maven-assembly-plugin/assembly.html#class_dependencySet)https://stackoverflow.com/questions/12823567
复制相似问题