我需要在运行时编辑POM。我使用Dom4j读取pom,之后设置了一些数据。但我需要知道是否存在另一种形式来做到这一点。为此存在maven实用程序?
答案 0 :(得分:10)
使用MavenXpp3Reader
阅读并MavenXpp3Writer
撰写Model
个对象。简单的例子:
String baseDir = "/your/project/basedir/";
//Reading
MavenXpp3Reader reader = new MavenXpp3Reader();
Model model = reader.read(new FileInputStream(new File(baseDir, "/pom.xml")));
//Editing
model.setUrl("http://stackoverflow.com");
//Writing
MavenXpp3Writer writer = new MavenXpp3Writer();
writer.write(new FileOutputStream(new File(baseDir, "/pom.xml")), model);
请注意,任何评论,额外的空格或行都将从文件中删除。
答案 1 :(得分:1)
根据您要更改的内容,可能会有maven插件。例如,maven release插件更新pom.xml中的版本信息,并将更改检查为版本控制。
尝试搜索您要完成的特定任务(例如“maven插件版本号更新”),而不是更通用的“修改pom.xml”。
答案 2 :(得分:0)