private DirectoryResource getTargetDirectory(Project project) { MavenFacet mavenFacet = project.getFacet(MavenFacet.class); Build build = mavenFacet.getModel().getBuild(); String targetFolderName; if (build != null && build.getOutputDirectory() != null) { targetFolderName = mavenFacet.resolveProperties(build.getOutputDirectory()); } else { targetFolderName = "target" + File.separator + "classes"; } DirectoryResource projectRoot = project.getRoot().reify(DirectoryResource.class); return projectRoot.getChildDirectory(targetFolderName); }
boolean success = project.getFacet(MavenFacet.class).executeMavenEmbedded(selected, out, err);
public Model getMavenModel(UIContextProvider builder) { MavenFacet mavenFacet = getMavenFacet(builder); if (mavenFacet != null) { return mavenFacet.getModel(); } return null; }
Project parent = projectFactory.findProject(parentResource); MavenFacet parentMavenFacet = parent.getFacet(MavenFacet.class); Model parentPom = parentMavenFacet.getModel(); parentMavenFacet.setModel(parentPom); Model pom = projectMavenFacet.getModel(); Path parentPomPath = Paths.get(parentMavenFacet.getModelResource().getFullyQualifiedName()); Path childPath = Paths.get(project.getRoot().getFullyQualifiedName()); Path relativePath = childPath.relativize(parentPomPath).normalize(); pom.setVersion(null); pom.setParent(projectParent); projectMavenFacet.setModel(pom);
@Override public Resource<?> getFinalArtifact() { MavenFacet mvn = getFaceted().getFacet(MavenFacet.class); try { Build build = mvn.getEffectiveModel().getBuild(); String directory = build.getDirectory(); String finalName = build.getFinalName(); if (Strings.isNullOrEmpty(directory)) { throw new IllegalStateException("Project build directory is not configured"); } if (Strings.isNullOrEmpty(finalName)) { throw new IllegalStateException("Project final artifact name is not configured"); } ResourceFactory resourceFactory = SimpleContainer .getServices(getClass().getClassLoader(), ResourceFactory.class).get(); return resourceFactory.create(new File(directory.trim(), finalName + "." + getPackagingType().toLowerCase())); } catch (Exception e) { throw new RuntimeException("Could not resolve build directory for project [" + mvn.getModelResource().getFullyQualifiedName() + "]"); } }
@Override public Dependency resolveProperties(final Dependency dependency) { MavenFacet mvn = getFaceted().getFacet(MavenFacet.class); DependencyBuilder builder = DependencyBuilder.create(dependency); builder.setGroupId(mvn.resolveProperties(dependency.getCoordinate().getGroupId())); builder.setArtifactId(mvn.resolveProperties(dependency.getCoordinate().getArtifactId())); builder.setVersion(mvn.resolveProperties(dependency.getCoordinate().getVersion())); builder.setClassifier(mvn.resolveProperties(dependency.getCoordinate().getClassifier())); builder.setPackaging(mvn.resolveProperties(dependency.getCoordinate().getPackaging())); builder.setScopeType(mvn.resolveProperties(dependency.getScopeType())); return builder; }
public Model getMavenModel(UIContextProvider builder) { MavenFacet mavenFacet = getMavenFacet(builder); if (mavenFacet != null) { return mavenFacet.getModel(); } return null; }
@Override public Dependency getEffectiveManagedDependency(final Dependency manDep) { MavenFacet maven = getFaceted().getFacet(MavenFacet.class); try { DependencyManagement depMan = maven.getEffectiveModel().getDependencyManagement(); List<Dependency> managedDependencies = (depMan != null ? MavenDependencyAdapter.fromMavenList(depMan .getDependencies()) : new ArrayList<>()); for (Dependency managedDependency : managedDependencies) { if (Dependencies.areEquivalent(managedDependency, resolveProperties(manDep))) { return resolveProperties(managedDependency); } } } catch (Exception e) { log.log(Level.SEVERE, "Could not resolve managed dependencies in project [" + maven.getModelResource().getFullyQualifiedName() + "]. ", e); } return null; }
@Override public boolean isInstalled() { MavenFacet mavenFacet = getMavenFacet(); Model pom = mavenFacet.getModel(); return pom.getProperties().getProperty(VERTX_VERSION_PROPERTY) != null; }
@Override public DirectoryResource getTargetDirectory() { MavenFacet mavenFacet = getFaceted().getFacet(MavenFacet.class); Build build = mavenFacet.getModel().getBuild(); String targetFolderName; if (build != null && build.getOutputDirectory() != null) { targetFolderName = mavenFacet.resolveProperties(build.getOutputDirectory()); } else { targetFolderName = "target" + File.separator + "classes"; } DirectoryResource projectRoot = getFaceted().getRoot().reify(DirectoryResource.class); return projectRoot.getChildDirectory(targetFolderName); }
@Override public Map<String, String> getDirectProperties() { MavenFacet maven = getFaceted().getFacet(MavenFacet.class); Model pom = maven.getModel(); Properties properties = pom.getProperties(); Map<String, String> result = new HashMap<>(); for (Entry<Object, Object> o : properties.entrySet()) { result.put((String) o.getKey(), (String) o.getValue()); } return result; }
@Override public DirectoryResource getSourceDirectory() { MavenFacet mavenFacet = getFaceted().getFacet(MavenFacet.class); Build build = mavenFacet.getModel().getBuild(); String srcFolderName; if (build != null && build.getSourceDirectory() != null) { srcFolderName = mavenFacet.resolveProperties(build.getSourceDirectory()); } else { srcFolderName = "src" + File.separator + "main" + File.separator + "java"; } DirectoryResource projectRoot = getFaceted().getRoot().reify(DirectoryResource.class); return projectRoot.getChildDirectory(srcFolderName); }
@Override public boolean isInstalled() { MavenFacet maven = getFaceted().getFacet(MavenFacet.class); Model pom = maven.getModel(); Properties properties = pom.getProperties(); List<String> keys = Arrays.asList(MAVEN_COMPILER_SOURCE_KEY, MAVEN_COMPILER_TARGET_KEY, MAVEN_COMPILER_ENCODING_KEY); return properties.keySet().containsAll(keys); }
@Override public DirectoryResource getTestSourceDirectory() { MavenFacet mavenFacet = getFaceted().getFacet(MavenFacet.class); Build build = mavenFacet.getModel().getBuild(); String srcFolderName; if (build != null && build.getTestSourceDirectory() != null) { srcFolderName = mavenFacet.resolveProperties(build.getTestSourceDirectory()); } else { srcFolderName = "src" + File.separator + "test" + File.separator + "java"; } DirectoryResource projectRoot = getFaceted().getRoot().reify(DirectoryResource.class); return projectRoot.getChildDirectory(srcFolderName); }
@Override public String getPackagingType() { MavenFacet mavenFacet = getFaceted().getFacet(MavenFacet.class); Model pom = mavenFacet.getModel(); String packaging = pom.getPackaging(); if (packaging != null) { packaging = packaging.trim(); } return packaging; }