Maven 2 用Maven生成类路径文件
我想从pom.xml依赖项生成一个类路径文件。我需要它,这样在测试期间我就有了所有依赖项的类路径(这些依赖项后来打包成一个包)Maven 2 用Maven生成类路径文件,maven-2,plugins,dependencies,Maven 2,Plugins,Dependencies,我想从pom.xml依赖项生成一个类路径文件。我需要它,这样在测试期间我就有了所有依赖项的类路径(这些依赖项后来打包成一个包) maven依赖插件不适合我,原因有二: 它生成存储库中文件的路径,因此要使用其他模块,他们首先需要为其运行安装阶段(我希望有/some/root/othermodule/target/classes这样的路径) 它不包括工件自己的路径(target/classes),这意味着我需要在以后的代码中添加它,这很尴尬 所以我正在寻找另一个插件(或者如何正确运行maven依
maven依赖插件
不适合我,原因有二:
- 它生成存储库中文件的路径,因此要使用其他模块,他们首先需要为其运行
阶段(我希望有安装
/some/root/othermodule/target/classes这样的路径)
- 它不包括工件自己的路径(
),这意味着我需要在以后的代码中添加它,这很尴尬target/classes
所以我正在寻找另一个插件(或者如何正确运行
maven依赖插件
)我最终使用了GMaven:
<plugin>
<groupId>org.codehaus.groovy.maven</groupId>
<artifactId>gmaven-plugin</artifactId>
<executions>
<execution>
<phase>generate-resources</phase>
<goals>
<goal>execute</goal>
</goals>
<configuration>
<source>
def all = project.runtimeArtifacts.collect{
def aid = "${it.groupId}:${it.artifactId}:${it.version}"
def p = project.projectReferences[aid]
p?.build?.outputDirectory ?: it.file.path
} + project.build.outputDirectory
def file = new File(project.build.directory, ".classpath")
file.write(all.join(File.pathSeparator))
</source>
</configuration>
</execution>
</executions>
</plugin>
测试的类路径是自动生成的。那么具体的问题在哪里呢?或者你说的是一种集成测试而不是单元测试?(多模块构建?)在一个组件中,我正在为另一个组件创建一个类加载器。在生产环境中,类路径是lib/*,但在测试环境中,我不想进行打包
file.write(project.runtimeClasspathElements.join(File.pathSeparator))