【问题标题】:How to copy files from classpath with maven如何使用 maven 从类路径复制文件
【发布时间】:2013-06-17 08:46:36
【问题描述】:

我需要提取几个 XML 配置,它们被放置在不同的工件中,但在类路径中的同一个包中。我需要这样做,因为然后我将它们与 XSLT 转换合并。

我不想在 pom 中指定每个工件的名称。插件应该从所有依赖项中获取整个类路径。

我找到了带有maven-dependency-plugin 的 sn-p,它部分满足了我的需要 (http://maven.apache.org/plugins/maven-dependency-plugin/examples/unpacking-artifacts.html)

但我只想指定类路径,不指定诸如:

 <configuration>
   <artifactItems>
     something like ALL
   </artifactItems>
   <includes>my/xml/config/package/*settings.xml</includes>
   <outputDirectory>${project.build.directory}/tmp</outputDirectory>
     ...
 </configuration>

有可能吗? maven-dependency-plugin 是正确的选择吗?

编辑:模型用例

我有 2 个罐子:

  • a.jar 其中类路径是文件my/xml/config/package/a-settings.xml
  • b.jar 其中类路径是文件my/xml/config/package/b-settings.xml

我只想指定my/xml/config/package/*settings.xml 并能够在不指定的情况下复制文件a-settings.xmlb-settings.xml somwhere,它们位于罐子a.jarb.jar 中(只是它们位于依赖项类路径中)

因为有可能,将来我需要添加c.jarc-settings.xml 等等..

【问题讨论】:

  • 您找到解决方案了吗?

标签: maven copy classpath maven-3 maven-dependency-plugin


【解决方案1】:

参考this 将您的依赖项复制到一些空目录。然后就像你上面提到的,在其他输出目录中包含必要的 xml。

【讨论】:

  • 感谢您的回复。您所指的答案并没有真正显示如何从类路径中复制一些文件,尽管它们被放置在 jar 文件中。我在我的问题中添加了模型用例以使自己清楚。再次感谢
  • hmm ...对于这个用例,我不知道如何在maven中做。但是,您可以尝试使用 maven-antrun-plugin(或其他一些插件,如 groovy 脚本插件)来使用您检索到的 jar。只需确保在 maven 中使用正确的生命周期阶段(在适当的时间调用脚本,例如在编译阶段之前)。
猜你喜欢
  • 1970-01-01
  • 2023-04-04
  • 1970-01-01
  • 1970-01-01
  • 2018-10-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多