2012-02-07 110 views
2

我有数百个分散在不同项目中的jar文件,我需要为其创建pom文件依赖项文件。我真的想避免手动搜索每个jar文件并手动添加依赖项。有没有我可以用来完成这项任务或其他方式的API?使用如所描述的一个通用的POM基于jar文件自动创建pom文件依赖项

伊夫尝试:http://maven.apache.org/plugins/maven-install-plugin/examples/generic-pom-generation.html

使用这个命令 - MVN安装:安装文件-Dfile =弹簧webmvc的portlet-3.0.6.RELEASE -DgroupId =测试-DartifactId =测试-Dversion = version -Dpackaging = jar -DgeneratePom = true

但是应该生成的pom与jar文件不匹配吗?或者我需要添加这个自己

<?xml version="1.0" encoding="UTF-8"?> 
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>test</groupId> 
    <artifactId>test</artifactId> 
    <version>version</version> 
    <packaging>jar-DgeneratePom=true</packaging> 
    <description>POM was created from install:install-file</description> 
</project> 

回答

1

您可能会创建一个使用Maven的安装插件来产生一个通用的POM bash脚本。

http://maven.apache.org/plugins/maven-install-plugin/examples/generic-pom-generation.html

+0

请参阅编辑,我不认为这将解决我的问题 – 2012-02-07 15:12:06

+0

你忘了空间:'-Dpackaging =罐子 -DgeneratePom = TRUE; – 2012-02-07 15:14:30

+0

似乎正常工作或方式我得到同样的结果。我期待pom自动包含artifactId&groupId,因为我指定了什么jar,但这似乎不可能,至少使用通用pom生成 – 2012-02-07 15:18:34

3

我写的生成ivy文件的脚本。它使用jar校验和来标识Maven中心中的匹配模块。

https://github.com/myspotontheweb/ant2ivy

该溶液可适于产生一个Maven POM。

+0

新版本显然会生成一个maven pom文件。 – ggb667 2014-02-24 16:14:34

+0

@ GGB667是的,我忘记了。我的意图是跟进一个Maven机制来管理没有被Nexus搜索识别的罐子。这是常春藤有更多的灵活性,允许文件系统解析器。我希望这个工具有帮助。 – 2014-02-24 19:15:18