我知道在没有发布代码的情况下提出问题是不正确的,但是我试图解决这个问题大约2天没有成功。
我需要的是能够使用已经存在或实现的插件从依赖jar获取单个文件(属性文件)并将其导出到我当前的插件源文件夹中,因为我需要我们相同的属性。该文件是一个成本定义文件,其他一些工具无法使用java URL类路径访问它(因此我需要直接在文件系统上访问它)。
我尝试使用“maven-dependency-plugin”来解决问题,但是在m2e(eclipse)中,当在工作空间内解析依赖关系时它不起作用。我希望它在两种情况下都有效:当依赖项目在eclipse工作区中时和不在时。
因此,如果不存在其他插件,我可以接受实现我自己的插件来执行此操作。但我无法在插件中找到如何获得依赖路径。
我的插件执行此操作
Set<Artifact> artifacts = project.getDependencyArtifacts();
for (Artifact artifact : artifacts) {
...
}
但我找不到关于如何获取工件路径的文档,因此我可以在两种情况下提取我需要的文件:在eclipse中(当依赖项目在工作空间时使用m2e)和在依赖项目来自时的eclipse之外存储库(我从命令行运行maven)。