文档说包括:
<dependencies>
<dependency>
<groupId>edu.stanford.nlp</groupId>
<artifactId>stanford-corenlp</artifactId>
<version>3.8.0</version>
</dependency>
<dependency>
<groupId>edu.stanford.nlp</groupId>
<artifactId>stanford-corenlp</artifactId>
<version>3.8.0</version>
<classifier>models</classifier>
</dependency>
</dependencies>
不幸的是,在尝试构建RPM时,程序集插件输出:
[INFO] [INFO]读取程序集描述符:src / main / assembly / assembly.xml [INFO] [INFO] lib / stanford-corenlp-3.8.0.jar已添加,跳过
我们在最终结果中只得到第一个jar而不是模型。
我知道这是我们最终的事情,因为它似乎对其他人有效,但有没有人有任何想法可能出错?搜索与maven相关的任何内容,跳过&#34;分类器&#34;部分没有工作,因为在很多情况下使用了分类器这个词。
答案 0 :(得分:0)
我们最终找到了答案 - 在我们的assembly.xml中,我们有了这个:
<dependencySet>
<outputFileNameMapping>${artifact.artifactId}-${artifact.version}.${artifact.extension}</outputFileNameMapping>
<outputDirectory>/lib</outputDirectory>
<useProjectArtifact>true</useProjectArtifact>
<useTransitiveDependencies>true</useTransitiveDependencies>
<unpack>false</unpack>
<scope>runtime</scope>
</dependencySet>
outputFileNameMapping值覆盖了默认值,并且缺少包含分类器的段:${dashClassifier?}
当前的Maven默认值为:${module.artifactId}-${module.version}${dashClassifier?}.${module.extension}
所以我们刚刚删除了outputFileNameMapping声明并修复了它。
https://maven.apache.org/plugins/maven-assembly-plugin/assembly.html