Maven 2 获取Maven中工件的全名

Maven 2 获取Maven中工件的全名,maven-2,Maven 2,我需要知道Maven中特定工件的完整文件名。我看了一下,但它似乎改变了pom本身。还有别的方法可以达到我的目标吗?我想将完整的工件名称存储在一个属性中,这样我就可以在Java代码中提取它。通常,您有自己的依赖项,让maven为您完成从存储库检索文件的所有工作。 但是您想在Java代码中使用它-什么Java代码? 您是否正在编写自己的mojo,以便在生命周期的安装阶段执行某些操作? 然后您应该能够访问当前正在处理的工件,从那里获取文件名不是问题。 但可能您只获得了已经存在的工件的groupId、a

我需要知道Maven中特定工件的完整文件名。我看了一下,但它似乎改变了pom本身。还有别的方法可以达到我的目标吗?我想将完整的工件名称存储在一个属性中,这样我就可以在Java代码中提取它。

通常,您有自己的依赖项,让maven为您完成从存储库检索文件的所有工作。 但是您想在Java代码中使用它-什么Java代码? 您是否正在编写自己的mojo,以便在生命周期的安装阶段执行某些操作? 然后您应该能够访问当前正在处理的工件,从那里获取文件名不是问题。 但可能您只获得了已经存在的工件的groupId、artifactId、版本和类型。
有了这些信息,导航到本地maven存储库应该没有问题,打开目录:groupId/artifactId/version,看看那里有哪些文件。通常应该有您的.poma.jar,可能有一个md5哈希和一些maven元数据。如果您不确定哪一个文件是最有趣的:请选择文件大小最大的文件。

谢谢您的回答。我不是在写mojo,只是为客户编写的测试框架修改一些代码。我希望避免编写Java代码,而只是使用属性将完整文件名从Maven传递给Java代码。作为一种解决方法,我现在在maven依赖插件中使用标记,因此我不必处理版本,并且总是使用相同的文件名。