说明
在某些情况下需要使用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