我继承了一个包含多个子项目的大项目。 他们都使用几个jar文件,所有这些文件都位于每个项目的lib目录下。我想把所有项目都迁移到maven,但是依赖是一个问题(太多了),其中一些是常用的库(apache项目,xerces,jms等),而其他的则不是。
有没有办法为那些可以在公共maven存储库中找到的jar自动生成maven依赖项。例如,看到我的项目使用spice-jndikit-1.2.jar文件并自动获得与组,工件和(如果可能)版本相适应的依赖性?
谢谢
答案 0 :(得分:1)
我写了一个groovy脚本来生成一组Apache ivy个起始文件。
https://github.com/myspotontheweb/ant2ivy
在我的情况下,我希望“Maven-ize”我的ANT版本而不必完全脱离ANT。 如果人们对此功能感兴趣,可以扩展此代码以生成Maven POM。
答案 1 :(得分:0)
您可以使用m2e插件将项目转换为Maven,但这会擦除您的jar引用,不应该使用它。
我怀疑这样的事情存在,因为典型的jar(除非它们自己用Maven构建)没有必要的信息来将groupId,artifactId和version关联到存储库以获得正确的路径。
您可能能够编写一些解析名称和版本的文件名的内容,但您仍然可以找到基于包的路径。
答案 2 :(得分:0)
如果您正在使用Ant构建,您可能还会考虑使用Apache Ivy及其基于文件系统的解决方案(非常快速且易于配置),以帮助您入门,并慢慢地将角色转移到Maven存储库中工件,这样你就不会花很多时间预先找到Maven依赖。