use of aQute.bnd.maven.support.Maven in project mdw-designer by CenturyLinkCloud.
the class MavenBuildFile method parse.
public OsgiManifestDescriptor parse() throws Exception {
File pomFile = new File(project.getFile("pom.xml").getLocation().toString());
if (project.getName().startsWith("MDW")) {
// since bnd assumes parent pom.xml is located in parent directory
File parentDir = project.getProject().getLocation().toFile().getParentFile();
File frameworkPom = new File(parentDir.toString() + "/MDWFramework/pom.xml");
if (frameworkPom.exists()) {
File destPom = new File(parentDir + "/pom.xml");
if (!destPom.exists() || (destPom.lastModified() < frameworkPom.lastModified()))
PluginUtil.copyFile(frameworkPom, destPom);
}
}
if (!project.getProject().getFolder(outputDirectory).exists())
outputDirectory = "build/classes";
try {
Maven maven = new Maven(Executors.newSingleThreadExecutor());
ProjectPom pom = maven.createProjectModel(pomFile);
groupId = pom.getGroupId();
artifactId = pom.getArtifactId();
version = pom.getVersion();
if (pom.getProperties().get("mdw.version") != null)
mdwVersion = pom.getProperty("mdw.version");
if (project.getName().startsWith("MDW"))
appGeneratedDir = pom.getProperty("app.generated.dir");
} catch (Exception ex) {
PluginMessages.log(ex);
}
// values not accessible from BND parser
MavenBuildFile saxParser = new MavenBuildFile(project);
manifestDescriptor = saxParser.parseSax();
manifestDescriptor.setOutputDir(project.getFolder(outputDirectory).getLocation().toFile());
return manifestDescriptor;
}
Aggregations