从目录创建依赖项

时间:2013-05-08 13:44:31

标签: java maven jar

有没有人知道从lib目录创建Maven依赖项的工具?我有几个包含大量JAR的Web项目,并希望将它们“mavenize”。寻找每个人的正确依赖是非常痛苦的,似乎可以用程序来解决。

3 个答案:

答案 0 :(得分:2)

嗯,因为这些罐子(大概)起初并不是来自Maven,所以它们不会包含告诉你GAV合作的清单。因此,很难看出工具如何从一个目录中推断出需要什么。除非你非常幸运,并且每个jar在文件名中都有精确的arteface ID和版本,在这种情况下你可以编写一些东西。

无论如何你可能不想要那样。我敢打赌,很多这些罐子都是传递性的依赖,你真的不希望它们乱丢你的POM。

博士咬了一口子弹,然后用手把它割了一下。您总是可以编写一个脚本,使用一些wget魔法对抗公共回购或其他东西,以帮助您一路走来。

答案 1 :(得分:1)

Ant2Ivy https://github.com/myspotontheweb/ant2ivy是一个可以执行此操作的Groovy脚本。

尽管它的名字,它也可以创建pom文件(https://github.com/myspotontheweb/ant2ivy/commit/9e3e8358f2b31507b13f5def69627da422e1656b)。

为了创建pom,它会在Maven Central中查找名称/哈希值。

答案 2 :(得分:0)

您可以编写一个插件,将所有依赖项(<scope>system</scope>)添加到项目的依赖项列表中。您可以通过查看build-helper-maven-plugin来检查如何执行此操作。

我强烈反对这样做。看,如果您打算使用Maven来做您的Ant猴子业务,那就用Ant吧。将节省您的时间和精力。

另一方面,如果您希望“对您的构建进行Mavenize”,您应该 真正 正确地对它进行Mavenize而不是对它很懒惰。解决方案只会像你制作它们一样糟糕。如果你很懒,那么无论哪种方式,它们都会变得混乱,所以这种努力毫无意义。

我建议您使用以下任一方式添加每个依赖项:

做好工作。此外,还要安装工件库管理器。 :) 祝你好运。