maven java讀取maven的pom.xml文件
可以使用maven官方的 maven-model里的MavenXpp3Reader類來讀取pom.xml文件, 需要引用maven jar包:
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-model</artifactId>
<version>3.0</version>
</dependency>
當然,也可以直接找到pom的安裝路徑下的lib目錄找到maven-model-3.1.0.jar文件,引用到項目中。
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.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
/**
* Created by outofmemory.cn on 2015/10/21.
*/
public class Main {
public static void main(String[] args) throws IOException, XmlPullParserException {
MavenXpp3Reader reader = new MavenXpp3Reader();
String myPom = System.getProperty("user.dir") + File.separator + "pom.xml";
Model model = reader.read(new FileReader(myPom));
}
}
如果你需要解析pom的父pom,以及父依賴等信息,需要用到ModelBuildingRequest 類,實例代碼如下。
ModelBuildingRequest req = new DefaultModelBuildingRequest();
req.setProcessPlugins( false );
req.setPomFile( file );
req.setModelResolver( new RepositoryModelResolver( basedir, pathTranslator ) );
req.setValidationLevel( ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL );
Model model;
try
{
model = builder.build( req ).getEffectiveModel();
}
catch ( ModelBuildingException e )
{
...
}
本文由用戶 vr195994 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!