Maven插件,用于从scm中提取内部依赖项文件

时间:2013-10-07 18:38:49

标签: java sql maven

我有一个Maven项目(A),它取决于某些库(B)。

Library使用Maven并且可以访问project.scm.developerConnection URL。 此外,此库包含一些SQL脚本(DDL),这些脚本未包含在最终JAR中。

有没有办法获取这些SQL文件(即使用Maven获取项目A中指定的版本库pom,解析它,使用提供的URL从scm中提取developerConnection url和checkout)?

我需要它们:

  • 运行使用库的某些功能的项目的集成测试。
  • 为项目构建分发包(使用maven-assembly-plugin)。

现在假设这个库也是由我编写的,那么分发SQL文件的最佳方式是什么(maven方式?=))?

将它们纳入JAR?

请注意,在这种情况下,SQL文件将专门用于JAR以构建Maven。

1 个答案:

答案 0 :(得分:0)

如果您需要这些资源可用于打包,请将它们放在您所依赖的单独工件中。

如果您只需要将这些资源用于测试,请将它们放在您依赖范围test的工件中。这可能是一个test-jar或一个单独的工件(如果您不想loose transitive dependencies of your test JAR)。

如果您只需要Maven可以使用这些资源,例如对于SQL Maven Plugin,将它们放在一个单独的工件中,并使maven项目中的插件(“A”)依赖它。

如果您知道这些资源对生产环境没有合理用处,那么不会将它们放在库的最终JAR中,因为这是生产环境。