我想将依赖项的名称放在一个文本文件中,该文件分布在使用 Maven 构建的包中。
我打算使用 maven assembly 插件生成 tarball 包,并使用过滤将名称放入文本文件中。
唯一的问题是,我不知道如何首先引用依赖项。
最佳答案
你不需要为此使用过滤,使用 Maven Dependency plugin 和它的 dependency:tree
目标来显示这个项目的依赖树。使用... outputFile
可选参数设置输出文件。因此配置可能如下所示:
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>tree</id>
<phase>prepare-package</phase>
<goals>
<goal>tree</goal>
</goals>
<configuration>
<outputFile>${project.build.outputDirectory}/dep.txt</outputFile>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
...
</project>
运行
package
阶段将在 target/classes/dep.txt
中生成依赖树并将其打包到 Artifact 中。调整它以满足您的需求。关于maven-2 - Maven2 : How do I generate a file that contains the names of the project's dependencies?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2562326/