Java读取解析 maven pom.xml 文件

说明

在某些情况下需要使用java代码解析 pom.xml 文件,如:读取版本号

注意

打包后,pom.xml 路径会改变,所以轻易不要读取该文件

依赖

增加下面依赖:

<dependency>
    <groupId>org.apache.maven</groupId>
    <artifactId>maven-model</artifactId>
    <version>3.6.0</version>
</dependency>

java代码

//pom 为 pom.xml 路径
FileInputStream fis = new FileInputStream(new File(pom))
MavenXpp3Reader reader = new MavenXpp3Reader();
Model model = reader.read(fis);

例子

package kafka;

import org.apache.maven.model.Model;
import org.apache.maven.model.io.xpp3.MavenXpp3Reader;
import org.codehaus.plexus.util.xml.pull.XmlPullParserException;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;

public class PomUtil {
    private Model model;

    public PomUtil() throws IOException, XmlPullParserException {
        FileInputStream fis = new FileInputStream(new File("pom.xml"));
        MavenXpp3Reader reader = new MavenXpp3Reader();
        model = reader.read(fis);
    }
    public String getVersion(){
        return model.getVersion();
    }
}

https://blog.csdn.net/sweatOtt/article/details/85294408


原文出处:/show_1IX4b1DuekSR.html