List of usage examples for org.apache.maven.artifact.repository ArtifactRepositoryFactory ROLE
String ROLE
To view the source code for org.apache.maven.artifact.repository ArtifactRepositoryFactory ROLE.
Click Source Link
From source file:com.effectivemaven.centrepoint.maven.repository.CentralRepositoryService.java
License:Apache License
@Inject private CentralRepositoryService(RepositoryParams params) { try {// w w w . j a v a 2 s .co m // jetty:run friendly setting Map<? extends Object, ? extends Object> context = Collections .singletonMap(PlexusConstants.IGNORE_CONTAINER_CONFIGURATION, Boolean.TRUE); // use Plexus to load the Maven components needed to retrieve repository information InputStreamReader configurationReader = new InputStreamReader( getClass().getResourceAsStream("/custom-plexus.xml")); PlexusContainer container = new DefaultPlexusContainer(configurationReader, context); this.artifactFactory = (ArtifactFactory) container.lookup(ArtifactFactory.ROLE); this.metadataSource = (ArtifactMetadataSource) container.lookup(MavenMetadataSource.ROLE, MavenMetadataSource.ROLE_HINT); ArtifactRepositoryFactory repositoryFactory = (ArtifactRepositoryFactory) container .lookup(ArtifactRepositoryFactory.ROLE); String localRepositoryUrl = new File(params.localRepositoryPath).toURL().toExternalForm(); this.localRepository = repositoryFactory.createDeploymentArtifactRepository("local", localRepositoryUrl, new DefaultRepositoryLayout(), false); repository = repositoryFactory.createArtifactRepository("central", params.repositoryUrl, new DefaultRepositoryLayout(), new ArtifactRepositoryPolicy(), new ArtifactRepositoryPolicy()); projectBuilder = (MavenProjectBuilder) container.lookup(MavenProjectBuilder.ROLE); } catch (Exception e) { throw new RuntimeException("Error starting Maven components for repository service", e); } }
From source file:com.googlecode.jndiresources.maven.MavenEmbedder.java
License:Apache License
/** * Start the maven embedded./*from w ww. j a va 2s . c o m*/ * @throws DuplicateRealmException If error. * @throws PlexusContainerException If error. * @throws ComponentLookupException If error. * @throws IOException If error. * @throws XmlPullParserException If error. */ public void start() throws DuplicateRealmException, PlexusContainerException, ComponentLookupException, IOException, XmlPullParserException { detectUserInstallation(); // ---------------------------------------------------------------------- // Set the maven.home system property which is need by components like // the plugin registry builder. // ---------------------------------------------------------------------- if (classLoader_ == null) { throw new IllegalStateException("A classloader must be specified using setClassLoader(ClassLoader)."); } embedder_ = new Embedder(); embedder_.setLoggerManager(new MavenEmbedderLoggerManager(new PlexusLogger())); final ClassWorld classWorld = new ClassWorld(); classWorld.newRealm("plexus.core", classLoader_); embedder_.start(classWorld); // ---------------------------------------------------------------------- // Artifact related components // ---------------------------------------------------------------------- artifactRepositoryFactory_ = (ArtifactRepositoryFactory) embedder_.lookup(ArtifactRepositoryFactory.ROLE); artifactFactory_ = (ArtifactFactory) embedder_.lookup(ArtifactFactory.ROLE); artifactResolver_ = (ArtifactResolver) embedder_.lookup(ArtifactResolver.ROLE); defaultArtifactRepositoryLayout_ = (ArtifactRepositoryLayout) embedder_ .lookup(ArtifactRepositoryLayout.ROLE, DEFAULT_LAYOUT_ID); // TODO : gestion Artifact // defaultMetadatSource=(ArtifactMetadataSource)embedder.lookup(ArtifactMetadataSource.ROLE); // defaultMetadatSource=new ArtifactRepositoryMetadata(artifact); createMavenSettings(); localRepository_ = createLocalRepository(settings_); }
From source file:hudson.gridmaven.RedeployPublisher.java
License:Open Source License
public boolean perform(AbstractBuild<?, ?> build, Launcher launcher, BuildListener listener) throws InterruptedException, IOException { if (build.getResult().isWorseThan(getTreshold())) return true; // build failed. Don't publish /**// w ww. ja v a2 s . c o m * Check if we should skip or not */ if (releaseEnvVar != null) { String envVarValue = build.getEnvironment(listener).get(releaseEnvVar); if ("true".equals(envVarValue)) { // null or false are ignored listener.getLogger().println("[INFO] Skipping deploying artifact as release build is in progress."); return true; // skip the deploy } } List<MavenAbstractArtifactRecord> mavenAbstractArtifactRecords = getActions(build, listener); if (mavenAbstractArtifactRecords == null || mavenAbstractArtifactRecords.isEmpty()) { listener.getLogger().println("[ERROR] No artifacts are recorded. Is this a Maven project?"); build.setResult(Result.FAILURE); return true; } if (build instanceof MavenModuleSetBuild && ((MavenModuleSetBuild) build).getParent().isArchivingDisabled()) { listener.getLogger() .println("[ERROR] You cannot use the \"Deploy artifacts to Maven repository\" feature if you " + "disabled automatic artifact archiving"); build.setResult(Result.FAILURE); return true; } long startupTime = Calendar.getInstance().getTimeInMillis(); try { MavenEmbedder embedder = createEmbedder(listener, build); ArtifactRepositoryLayout layout = (ArtifactRepositoryLayout) embedder .lookup(ArtifactRepositoryLayout.ROLE, "default"); ArtifactRepositoryFactory factory = (ArtifactRepositoryFactory) embedder .lookup(ArtifactRepositoryFactory.ROLE); ArtifactRepository artifactRepository = null; if (url != null) { // By default we try to get the repository definition from the job configuration artifactRepository = getDeploymentRepository(factory, layout, id, url); } for (MavenAbstractArtifactRecord mavenAbstractArtifactRecord : mavenAbstractArtifactRecords) { if (artifactRepository == null && mavenAbstractArtifactRecord instanceof MavenArtifactRecord) { // If no repository definition is set on the job level we try to take it from the POM MavenArtifactRecord mavenArtifactRecord = (MavenArtifactRecord) mavenAbstractArtifactRecord; artifactRepository = getDeploymentRepository(factory, layout, mavenArtifactRecord.repositoryId, mavenArtifactRecord.repositoryUrl); } if (artifactRepository == null) { listener.getLogger().println( "[ERROR] No Repository settings defined in the job configuration or distributionManagement of the module."); build.setResult(Result.FAILURE); return true; } mavenAbstractArtifactRecord.deploy(embedder, artifactRepository, listener); } listener.getLogger().println("[INFO] Deployment done in " + Util.getTimeSpanString(Calendar.getInstance().getTimeInMillis() - startupTime)); return true; } catch (MavenEmbedderException e) { e.printStackTrace(listener.error(e.getMessage())); } catch (ComponentLookupException e) { e.printStackTrace(listener.error(e.getMessage())); } catch (ArtifactDeploymentException e) { e.printStackTrace(listener.error(e.getMessage())); } // failed build.setResult(Result.FAILURE); listener.getLogger().println("[INFO] Deployment failed after " + Util.getTimeSpanString(Calendar.getInstance().getTimeInMillis() - startupTime)); return true; }
From source file:hudson.gridmaven.reporters.MavenAbstractArtifactRecord.java
License:Open Source License
/** * Performs a redeployment./*w ww.j a va 2s . c o m*/ */ public final HttpResponse doRedeploy(@QueryParameter("_.id") final String id, @QueryParameter("_.url") final String repositoryUrl, @QueryParameter("_.uniqueVersion") final boolean uniqueVersion) throws ServletException, IOException { getACL().checkPermission(REDEPLOY); File logFile = new File(getBuild().getRootDir(), "maven-deployment." + records.size() + ".log"); final Record record = new Record(repositoryUrl, logFile.getName()); records.add(record); new TaskThread(this, ListenerAndText.forFile(logFile, this)) { protected void perform(TaskListener listener) throws Exception { try { MavenEmbedder embedder = MavenUtil.createEmbedder(listener, getBuild()); ArtifactRepositoryLayout layout = embedder.lookup(ArtifactRepositoryLayout.class, "default"); ArtifactRepositoryFactory factory = (ArtifactRepositoryFactory) embedder .lookup(ArtifactRepositoryFactory.ROLE); ArtifactRepository repository = factory.createDeploymentArtifactRepository(id, repositoryUrl, layout, uniqueVersion); WrappedArtifactRepository repo = new WrappedArtifactRepository(repository, uniqueVersion); deploy(embedder, repo, listener); record.result = Result.SUCCESS; } finally { if (record.result == null) record.result = Result.FAILURE; // persist the record getBuild().save(); } } }.start(); return HttpRedirect.DOT; }
From source file:hudson.maven.RedeployPublisher.java
License:Open Source License
public boolean perform(AbstractBuild<?, ?> build, Launcher launcher, BuildListener listener) throws InterruptedException, IOException { if (build.getResult().isWorseThan(getTreshold())) return true; // build failed. Don't publish /**/*from w ww .j av a 2s . co m*/ * Check if we should skip or not */ if (releaseEnvVar != null) { String envVarValue = build.getEnvironment(listener).get(releaseEnvVar); if ("true".equals(envVarValue)) { // null or false are ignored listener.getLogger().println("[INFO] Skipping deploying artifact as release build is in progress."); return true; // skip the deploy } } List<MavenAbstractArtifactRecord> mavenAbstractArtifactRecords = getActions(build, listener); if (mavenAbstractArtifactRecords == null || mavenAbstractArtifactRecords.isEmpty()) { listener.getLogger().println("[ERROR] No artifacts are recorded. Is this a Maven project?"); build.setResult(Result.FAILURE); return true; } if (build instanceof MavenModuleSetBuild && ((MavenModuleSetBuild) build).getParent().isArchivingDisabled()) { listener.getLogger() .println("[ERROR] You cannot use the \"Deploy artifacts to Maven repository\" feature if you " + "disabled automatic artifact archiving"); build.setResult(Result.FAILURE); return true; } long startupTime = System.currentTimeMillis(); try { MavenEmbedder embedder = createEmbedder(listener, build); ArtifactRepositoryLayout layout = (ArtifactRepositoryLayout) embedder .lookup(ArtifactRepositoryLayout.ROLE, "default"); ArtifactRepositoryFactory factory = (ArtifactRepositoryFactory) embedder .lookup(ArtifactRepositoryFactory.ROLE); ArtifactRepository artifactRepository = null; if (url != null) { // By default we try to get the repository definition from the job configuration artifactRepository = getDeploymentRepository(factory, layout, id, url); } for (MavenAbstractArtifactRecord mavenAbstractArtifactRecord : mavenAbstractArtifactRecords) { if (artifactRepository == null && mavenAbstractArtifactRecord instanceof MavenArtifactRecord) { // If no repository definition is set on the job level we try to take it from the POM MavenArtifactRecord mavenArtifactRecord = (MavenArtifactRecord) mavenAbstractArtifactRecord; artifactRepository = getDeploymentRepository(factory, layout, mavenArtifactRecord.repositoryId, mavenArtifactRecord.repositoryUrl); } if (artifactRepository == null) { listener.getLogger().println( "[ERROR] No Repository settings defined in the job configuration or distributionManagement of the module."); build.setResult(Result.FAILURE); return true; } mavenAbstractArtifactRecord.deploy(embedder, artifactRepository, listener); } listener.getLogger().println("[INFO] Deployment done in " + Util.getTimeSpanString(System.currentTimeMillis() - startupTime)); return true; } catch (MavenEmbedderException e) { e.printStackTrace(listener.error(e.getMessage())); } catch (ComponentLookupException e) { e.printStackTrace(listener.error(e.getMessage())); } catch (ArtifactDeploymentException e) { e.printStackTrace(listener.error(e.getMessage())); } // failed build.setResult(Result.FAILURE); listener.getLogger().println("[INFO] Deployment failed after " + Util.getTimeSpanString(System.currentTimeMillis() - startupTime)); return true; }
From source file:hudson.maven.reporters.MavenAbstractArtifactRecord.java
License:Open Source License
/** * Performs a redeployment./*from w w w .j a va2s. c om*/ */ @RequirePOST public final HttpResponse doRedeploy(@QueryParameter("_.id") final String id, @QueryParameter("_.url") final String repositoryUrl, @QueryParameter("_.uniqueVersion") final boolean uniqueVersion) throws ServletException, IOException { getACL().checkPermission(REDEPLOY); File logFile = new File(getBuild().getRootDir(), "maven-deployment." + records.size() + ".log"); final Record record = new Record(repositoryUrl, logFile.getName()); records.add(record); new TaskThread(this, ListenerAndText.forFile(logFile, this)) { protected void perform(TaskListener listener) throws Exception { try { MavenEmbedder embedder = MavenUtil.createEmbedder(listener, getBuild()); ArtifactRepositoryLayout layout = embedder.lookup(ArtifactRepositoryLayout.class, "default"); ArtifactRepositoryFactory factory = (ArtifactRepositoryFactory) embedder .lookup(ArtifactRepositoryFactory.ROLE); ArtifactRepository repository = factory.createDeploymentArtifactRepository(id, repositoryUrl, layout, uniqueVersion); WrappedArtifactRepository repo = new WrappedArtifactRepository(repository, uniqueVersion); deploy(embedder, repo, listener); record.result = Result.SUCCESS; } finally { if (record.result == null) record.result = Result.FAILURE; // persist the record getBuild().save(); } } }.start(); return HttpRedirect.DOT; }
From source file:org.efaps.maven_java5.EfapsAnnotationDescriptorExtractor.java
License:Open Source License
/** * Initialize the container from the context. * *///w w w .jav a 2s . c o m public void contextualize(final Context _context) throws ContextException { final PlexusContainer container = (PlexusContainer) _context.get(PlexusConstants.PLEXUS_KEY); try { this.artifactRepositoryLayout = (ArtifactRepositoryLayout) container .lookup(ArtifactRepositoryLayout.ROLE); } catch (final ComponentLookupException e) { throw new ContextException("Could not get ArtifactRepositoryLayout from PlexusContainer", e); } try { this.artifactRepositoryFactory = (ArtifactRepositoryFactory) container .lookup(ArtifactRepositoryFactory.ROLE); } catch (final ComponentLookupException e) { throw new ContextException("Could not get ArtifactResolver from PlexusContainer", e); } try { this.settingsBuilder = (MavenSettingsBuilder) container.lookup(MavenSettingsBuilder.ROLE); } catch (final ComponentLookupException e) { throw new ContextException("Could not get ArtifactResolver from PlexusContainer", e); } try { this.artifactResolver = (ArtifactResolver) container.lookup(ArtifactResolver.ROLE); } catch (final ComponentLookupException e) { throw new ContextException("Could not get ArtifactResolver from PlexusContainer", e); } try { this.artifactFactory = (ArtifactFactory) container.lookup(ArtifactFactory.ROLE); } catch (final ComponentLookupException e) { throw new ContextException("Could not get ArtifactFactory from PlexusContainer", e); } try { this.artifactMetadataSource = (ArtifactMetadataSource) container.lookup(ArtifactMetadataSource.ROLE, "maven"); } catch (final ComponentLookupException e) { throw new ContextException("Could not get ArtifactMetadataSource from PlexusContainer", e); } }
From source file:org.nuxeo.build.maven.MavenEmbedder.java
License:Open Source License
public void start() throws MavenEmbedderException { detectUserInstallation();//from w ww .j a v a 2s . c o m // ---------------------------------------------------------------------- // Set the maven.home system property which is need by components like // the plugin registry builder. // ---------------------------------------------------------------------- if (classLoader == null) { throw new IllegalStateException("A classloader must be specified using setClassLoader(ClassLoader)."); } embedder = new Embedder(); if (logger != null) { embedder.setLoggerManager(new MavenEmbedderLoggerManager(new PlexusLoggerAdapter(logger))); } try { ClassWorld classWorld = new ClassWorld(); classWorld.newRealm("plexus.core", classLoader); embedder.start(classWorld); // ---------------------------------------------------------------------- // Lookup each of the components we need to provide the desired // client interface. // ---------------------------------------------------------------------- modelReader = new MavenXpp3Reader(); modelWriter = new MavenXpp3Writer(); pluginDescriptorBuilder = new PluginDescriptorBuilder(); profileManager = new DefaultProfileManager(embedder.getContainer(), (Properties) null); mavenProjectBuilder = (MavenProjectBuilder) embedder.lookup(MavenProjectBuilder.ROLE); // ---------------------------------------------------------------------- // Artifact related components // ---------------------------------------------------------------------- artifactRepositoryFactory = (ArtifactRepositoryFactory) embedder.lookup(ArtifactRepositoryFactory.ROLE); artifactFactory = (ArtifactFactory) embedder.lookup(ArtifactFactory.ROLE); artifactResolver = (ArtifactResolver) embedder.lookup(ArtifactResolver.ROLE); artifactMetadataSource = (ArtifactMetadataSource) embedder.lookup(ArtifactMetadataSource.ROLE); defaultArtifactRepositoryLayout = (ArtifactRepositoryLayout) embedder .lookup(ArtifactRepositoryLayout.ROLE, DEFAULT_LAYOUT_ID); lifecycleExecutor = (LifecycleExecutor) embedder.lookup(LifecycleExecutor.ROLE); wagonManager = (WagonManager) embedder.lookup(WagonManager.ROLE); createMavenSettings(); profileManager.loadSettingsProfiles(settings); localRepository = createLocalRepository(); } catch (PlexusContainerException e) { throw new MavenEmbedderException("Cannot start Plexus embedder.", e); } catch (DuplicateRealmException e) { throw new MavenEmbedderException("Cannot create Classworld realm for the embedder.", e); } catch (ComponentLookupException e) { throw new MavenEmbedderException("Cannot lookup required component.", e); } }