List of usage examples for org.apache.maven.project MavenProject getFile
public File getFile()
From source file:org.sourcepit.maven.bootstrap.internal.core.ReactorReader.java
License:Apache License
private File find(MavenProject project, Artifact artifact) { if ("pom".equals(artifact.getExtension())) { return project.getFile(); }/*from w w w.j a v a 2s . c o m*/ org.apache.maven.artifact.Artifact projectArtifact = findMatchingArtifact(project, artifact); if (hasArtifactFileFromPackagePhase(projectArtifact)) { return projectArtifact.getFile(); } else if (!hasBeenPackaged(project)) { // fallback to loose class files only if artifacts haven't been packaged yet if (isTestArtifact(artifact)) { if (project.hasLifecyclePhase("test-compile")) { return new File(project.getBuild().getTestOutputDirectory()); } } else { if (project.hasLifecyclePhase("compile")) { return new File(project.getBuild().getOutputDirectory()); } } } // The fall-through indicates that the artifact cannot be found; // for instance if package produced nothing or classifier problems. return null; }
From source file:org.sourcepit.tpmp.change.b2.B2TargetPlatformConfigurationFilesDiscoverer.java
License:Apache License
@Override public List<File> getTargetPlatformConfigurationFiles(MavenSession session, MavenProject project) { final List<File> files = new ArrayList<File>(); final File moduleXML = B2Utils.findModuleXML(session, project); if (moduleXML != null) { final File modulePom = new File(moduleXML.getParentFile(), ".b2/module-pom-template.xml"); if (modulePom.exists()) { files.add(modulePom);// w ww. ja v a2 s . c o m if (!B2Utils.isDerivedProject(project)) { final File b2ExtFile = new File(project.getBasedir(), "b2-extension.xml"); if (b2ExtFile.exists()) { files.add(b2ExtFile); } files.addAll(super.getTargetPlatformConfigurationFiles(session, project)); files.remove(project.getFile()); } return files; } } throw new IllegalStateException(); }
From source file:org.sourcepit.tpmp.change.tycho.TychoTargetPlatformConfigurationFilesDiscoverer.java
License:Apache License
@Override public List<File> getTargetPlatformConfigurationFiles(MavenSession session, MavenProject project) { final List<File> files = new ArrayList<File>(); files.add(project.getFile()); final TychoProject tychoProject = projectTypes.get(project.getPackaging()); if (tychoProject != null) { if (tychoProject instanceof OsgiBundleProject) { files.add(new File(project.getBasedir(), "META-INF/MANIFEST.MF")); } else if (tychoProject instanceof EclipseApplicationProject) { files.add(new File(project.getBasedir(), project.getArtifactId() + ".product")); } else if (tychoProject instanceof EclipseFeatureProject) { files.add(new File(project.getBasedir(), Feature.FEATURE_XML)); } else if (tychoProject instanceof EclipseRepositoryProject) { files.addAll(/* ((EclipseRepositoryProject) tychoProject). */getCategoryFiles(project)); files.addAll(((EclipseRepositoryProject) tychoProject).getProductFiles(project)); } else if (tychoProject instanceof UpdateSiteProject) { files.add(new File(project.getBasedir(), UpdateSite.SITE_XML)); }// w w w . j a v a2 s.c o m } return files; }
From source file:org.sourcepit.tpmp.resolver.tycho.TychoSessionTargetPlatformResolver.java
License:Apache License
private MavenProject setupAggregatedProject(MavenSession session, TargetPlatformConfiguration aggregatedConfiguration) { PropertiesMap mvnProperties = new LinkedPropertiesMap(); mvnProperties.load(getClass().getClassLoader(), "META-INF/tpmp/maven.properties"); String groupId = mvnProperties.get("groupId"); String artifactId = mvnProperties.get("artifactId"); String version = mvnProperties.get("version"); final String tpmpKey = Plugin.constructKey(groupId, artifactId); MavenProject origin = session.getCurrentProject(); Model model = origin.getModel().clone(); Build build = model.getBuild();//from www . ja v a 2s . c o m if (build.getPluginsAsMap().get(tpmpKey) == null) { Plugin tpmp = new Plugin(); tpmp.setGroupId(groupId); tpmp.setArtifactId(artifactId); tpmp.setVersion(version); build.getPlugins().add(tpmp); build.flushPluginMap(); } MavenProject fake = new MavenProject(model); fake.setClassRealm(origin.getClassRealm()); fake.setFile(origin.getFile()); final Map<String, ArtifactRepository> artifactRepositories = new LinkedHashMap<String, ArtifactRepository>(); final Map<String, ArtifactRepository> pluginRepositories = new LinkedHashMap<String, ArtifactRepository>(); for (MavenProject project : session.getProjects()) { for (ArtifactRepository repository : project.getRemoteArtifactRepositories()) { if (!artifactRepositories.containsKey(repository.getId())) { artifactRepositories.put(repository.getId(), repository); } } for (ArtifactRepository repository : project.getPluginArtifactRepositories()) { if (!pluginRepositories.containsKey(repository.getId())) { pluginRepositories.put(repository.getId(), repository); } } } fake.setRemoteArtifactRepositories(new ArrayList<ArtifactRepository>(artifactRepositories.values())); fake.setPluginArtifactRepositories(new ArrayList<ArtifactRepository>(pluginRepositories.values())); fake.setManagedVersionMap(origin.getManagedVersionMap()); if (getTychoProject(fake) == null) { fake.setPackaging("eclipse-repository"); } fake.getBuildPlugins(); AbstractTychoProject tychoProject = (AbstractTychoProject) getTychoProject(fake); tychoProject.setupProject(session, fake); Properties properties = new Properties(); properties.putAll(fake.getProperties()); properties.putAll(session.getSystemProperties()); // session wins properties.putAll(session.getUserProperties()); fake.setContextValue(TychoConstants.CTX_MERGED_PROPERTIES, properties); fake.setContextValue(TychoConstants.CTX_TARGET_PLATFORM_CONFIGURATION, aggregatedConfiguration); ExecutionEnvironmentConfiguration eeConfiguration = new ExecutionEnvironmentConfigurationImpl(logger, aggregatedConfiguration.isResolveWithEEConstraints()); tychoProject.readExecutionEnvironmentConfiguration(fake, eeConfiguration); fake.setContextValue(TychoConstants.CTX_EXECUTION_ENVIRONMENT_CONFIGURATION, eeConfiguration); final DependencyMetadata dm = new DependencyMetadata(); for (ReactorProject reactorProject : DefaultReactorProject.adapt(session)) { mergeMetadata(dm, reactorProject, true); mergeMetadata(dm, reactorProject, false); } int i = 0; for (Object object : dm.getMetadata(true)) { InstallableUnitDAO dao = new TychoSourceIUResolver.InstallableUnitDAO( object.getClass().getClassLoader()); dao.setProperty(object, RepositoryLayoutHelper.PROP_CLASSIFIER, "fake_" + i); i++; } for (Object object : dm.getMetadata(false)) { InstallableUnitDAO dao = new TychoSourceIUResolver.InstallableUnitDAO( object.getClass().getClassLoader()); dao.setProperty(object, RepositoryLayoutHelper.PROP_CLASSIFIER, "fake_" + i); i++; } Map<String, DependencyMetadata> metadata = new LinkedHashMap<String, DependencyMetadata>(); metadata.put(null, dm); fake.setContextValue("tpmp.aggregatedMetadata", metadata); return fake; }
From source file:org.springframework.ide.eclipse.maven.legacy.internal.core.GoogleProjectConfigurator.java
License:Open Source License
/** * {@inheritDoc}//ww w .ja va2s. c o m */ @Override protected void doConfigure(final MavenProject mavenProject, IProject project, ProjectConfigurationRequest request, final IProgressMonitor monitor) throws CoreException { final IMaven maven = MavenPlugin.getDefault().getMaven(); configureNature(project, mavenProject, GAE_NATURE_ID, true, new NatureCallbackAdapter() { @Override public void beforeAddingNature() { try { DefaultMavenExecutionRequest executionRequest = new DefaultMavenExecutionRequest(); executionRequest.setBaseDirectory(mavenProject.getBasedir()); executionRequest.setLocalRepository(maven.getLocalRepository()); executionRequest.setRemoteRepositories(mavenProject.getRemoteArtifactRepositories()); executionRequest.setPluginArtifactRepositories(mavenProject.getPluginArtifactRepositories()); executionRequest.setPom(mavenProject.getFile()); executionRequest.setGoals(GAE_UNPACK_GOAL); MavenExecutionResult result = maven.execute(executionRequest, monitor); if (result.hasExceptions()) { MavenCorePlugin.getDefault().getLog() .log(new Status(IStatus.ERROR, MavenCorePlugin.NON_LEGACY_PLUGIN_ID, "Error configuring project", result.getExceptions().get(0))); } } catch (CoreException e) { MavenCorePlugin.getDefault().getLog().log(new Status(IStatus.ERROR, MavenCorePlugin.NON_LEGACY_PLUGIN_ID, "Error configuring project", e)); } } }, monitor); if (configureNature(project, mavenProject, GWT_NATURE_ID, true, new NatureCallbackAdapter() { @Override public void beforeAddingNature() { // Get the GWT version from the project pom String gwtVersion = null; List<Dependency> dependencies = mavenProject.getDependencies(); for (Dependency dependency : dependencies) { if (GWT_GROUP_ID.equals(dependency.getGroupId()) && ("gwt-user".equals(dependency.getArtifactId()) || "gwt-servlet".equals(dependency.getArtifactId()))) { gwtVersion = dependency.getVersion(); break; } } // Check that the pom.xml has GWT dependencies if (StringUtils.hasLength(gwtVersion)) { try { // Download and install the gwt-dev.jar into the local repository maven.resolve(GWT_GROUP_ID, "gwt-dev", gwtVersion, "jar", null, mavenProject.getRemoteArtifactRepositories(), monitor); } catch (CoreException e) { MavenCorePlugin.getDefault().getLog().log(new Status(IStatus.ERROR, MavenCorePlugin.NON_LEGACY_PLUGIN_ID, "Error configuring project", e)); } } } }, monitor)) { try { // Add GWT Web Application configuration parameters IEclipsePreferences prefs = SpringCorePreferences .getProjectPreferences(project, "com.google.gdt.eclipse.core").getProjectPreferences(); prefs.put("warSrcDir", "src/main/webapp"); prefs.putBoolean("warSrcDirIsOutput", false); String artifactId = mavenProject.getArtifactId(); String version = mavenProject.getVersion(); IPath location = SpringCoreUtils.getProjectLocation(project); if (location != null && artifactId != null && version != null) { prefs.put("lastWarOutDir", location.append("target").append(artifactId + "-" + version).toFile() .getAbsolutePath()); } prefs.flush(); } catch (BackingStoreException e) { MavenCorePlugin.getDefault().getLog().log(new Status(IStatus.ERROR, MavenCorePlugin.NON_LEGACY_PLUGIN_ID, "Error configuring project", e)); } } }
From source file:org.springframework.ide.vscode.commons.maven.MavenBridge.java
License:Open Source License
MavenProject resolveParentProject(RepositorySystemSession repositorySession, MavenProject child, ProjectBuildingRequest configuration) throws MavenException { configuration.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL); configuration.setRepositorySession(repositorySession); try {/* w ww . ja v a 2s . c o m*/ configuration.setRemoteRepositories(child.getRemoteArtifactRepositories()); File parentFile = child.getParentFile(); if (parentFile != null) { return lookup(ProjectBuilder.class).build(parentFile, configuration).getProject(); } Artifact parentArtifact = child.getParentArtifact(); if (parentArtifact != null) { MavenProject parent = lookup(ProjectBuilder.class).build(parentArtifact, configuration) .getProject(); parentFile = parentArtifact.getFile(); // file is resolved as // side-effect of the // prior call // compensate for apparent bug in maven 3.0.4 which does not set // parent.file and parent.artifact.file if (parent.getFile() == null) { parent.setFile(parentFile); } if (parent.getArtifact().getFile() == null) { parent.getArtifact().setFile(parentFile); } return parent; } } catch (ProjectBuildingException ex) { log.error("Could not read parent project", ex); } return null; }
From source file:org.universAAL.support.directives.util.PomWriter.java
License:Apache License
public static Model readPOMFile(MavenProject pom) throws FileNotFoundException, IOException, XmlPullParserException { MavenXpp3Reader reader = new MavenXpp3Reader(); FileInputStream fis = new FileInputStream(new File(pom.getFile().getAbsolutePath())); Model model = reader.read(fis);/*from ww w . j av a2 s . co m*/ fis.close(); return model; }
From source file:org.vaadin.directory.maven.PomUtils.java
License:Apache License
/** * Load pom.xml form this project.//from ww w . j ava2 s. co m * * @param project * @return */ public static Model getProjectPom(MavenProject project) { try { MavenXpp3Reader reader = new MavenXpp3Reader(); return reader.read(new FileReader(project.getFile())); } catch (FileNotFoundException ex) { Logger.getLogger(PomUtils.class.getName()).log(Level.SEVERE, null, ex); } catch (IOException | XmlPullParserException ex) { Logger.getLogger(PomUtils.class.getName()).log(Level.SEVERE, null, ex); } return null; }
From source file:org.vaadin.directory.maven.PomUtils.java
License:Apache License
/** * Save/replace this projects pom.xml.//from w w w . j a va2s.c o m * * @param project * @param pomModel */ public static void saveToProject(MavenProject project, Model pomModel) { try { MavenXpp3Writer w = new MavenXpp3Writer(); w.write(new FileOutputStream(project.getFile()), pomModel); } catch (FileNotFoundException ex) { Logger.getLogger(PomUtils.class.getName()).log(Level.SEVERE, null, ex); } catch (IOException ex) { Logger.getLogger(PomUtils.class.getName()).log(Level.SEVERE, null, ex); } }
From source file:org.vaadin.netbeans.impl.VaadinSupportImpl.java
License:Apache License
@Override public String getVaadinVersion() { NbMavenProject mvnProject = getProject().getLookup().lookup(NbMavenProject.class); MavenProject mavenProject = mvnProject.getMavenProject(); FileObject pom = FileUtil.toFileObject(FileUtil.normalizeFile(mavenProject.getFile())); String version = getVaadinVersion(pom); if (version == null) { version = getVaadinVersion(FileUtil.toFileObject(FileUtil.normalizeFile(mavenProject.getParentFile()))); }//from w w w . j av a 2s. com if (version == null) { LOG.severe( "Unknown project structure: cannot get version " + "neither from the project nor from parents"); } return version; }