o cleaning up project builder, removed signatures that i've corrected in the RR plugin, moved properties injection up to the main Maven component

git-svn-id: https://svn.apache.org/repos/asf/maven/components/branches/MNG-2766@770390 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Jason van Zyl 2009-04-30 18:49:42 +00:00
parent 85d0d0d310
commit 36e43b2951
158 changed files with 719 additions and 896 deletions

View File

@ -24,10 +24,10 @@ import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import org.apache.maven.settings.io.xpp3.SettingsXpp3Reader;
import junit.framework.TestCase;
import org.apache.maven.settings.io.xpp3.SettingsXpp3Reader;
/**
* Tests that the global settings.xml shipped with the distribution is in good state.
*

View File

@ -19,6 +19,11 @@ package org.apache.maven.artifact;
* under the License.
*/
import java.io.File;
import java.util.Collection;
import java.util.List;
import java.util.regex.Pattern;
import org.apache.maven.artifact.handler.ArtifactHandler;
import org.apache.maven.artifact.metadata.ArtifactMetadata;
import org.apache.maven.artifact.repository.ArtifactRepository;
@ -27,11 +32,6 @@ import org.apache.maven.artifact.versioning.ArtifactVersion;
import org.apache.maven.artifact.versioning.OverConstrainedVersionException;
import org.apache.maven.artifact.versioning.VersionRange;
import java.io.File;
import java.util.Collection;
import java.util.List;
import java.util.regex.Pattern;
/**
* Description of an artifact.
*

View File

@ -19,8 +19,6 @@ package org.apache.maven.artifact;
* under the License.
*/
import org.apache.maven.artifact.versioning.VersionRange;
import java.util.ArrayList;
import java.util.Collection;
import java.util.LinkedHashMap;
@ -28,6 +26,8 @@ import java.util.List;
import java.util.Map;
import java.util.regex.Matcher;
import org.apache.maven.artifact.versioning.VersionRange;
public final class ArtifactUtils
{
private ArtifactUtils()

View File

@ -19,16 +19,6 @@ package org.apache.maven.artifact;
* under the License.
*/
import org.apache.maven.artifact.handler.ArtifactHandler;
import org.apache.maven.artifact.metadata.ArtifactMetadata;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
import org.apache.maven.artifact.versioning.ArtifactVersion;
import org.apache.maven.artifact.versioning.OverConstrainedVersionException;
import org.apache.maven.artifact.versioning.VersionRange;
import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
import org.codehaus.plexus.util.StringUtils;
import java.io.File;
import java.util.Collection;
import java.util.Collections;
@ -37,6 +27,16 @@ import java.util.List;
import java.util.Map;
import java.util.regex.Matcher;
import org.apache.maven.artifact.handler.ArtifactHandler;
import org.apache.maven.artifact.metadata.ArtifactMetadata;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
import org.apache.maven.artifact.versioning.ArtifactVersion;
import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
import org.apache.maven.artifact.versioning.OverConstrainedVersionException;
import org.apache.maven.artifact.versioning.VersionRange;
import org.codehaus.plexus.util.StringUtils;
/**
* @author <a href="mailto:jason@maven.org">Jason van Zyl </a>
* @version $Id$

View File

@ -1,9 +1,9 @@
package org.apache.maven.artifact;
import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
import java.net.MalformedURLException;
import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file

View File

@ -19,11 +19,11 @@ package org.apache.maven.artifact.deployer;
* under the License.
*/
import java.io.File;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
import java.io.File;
public interface ArtifactDeployer
{
String ROLE = ArtifactDeployer.class.getName();

View File

@ -19,10 +19,10 @@ package org.apache.maven.artifact.handler.manager;
* under the License.
*/
import org.apache.maven.artifact.handler.ArtifactHandler;
import java.util.Map;
import org.apache.maven.artifact.handler.ArtifactHandler;
/**
* @author Jason van Zyl
* @version $Id$

View File

@ -19,14 +19,14 @@ package org.apache.maven.artifact.handler.manager;
* under the License.
*/
import java.util.Map;
import java.util.Set;
import org.apache.maven.artifact.handler.ArtifactHandler;
import org.apache.maven.artifact.handler.DefaultArtifactHandler;
import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.component.annotations.Requirement;
import java.util.Map;
import java.util.Set;
/**
* @author Jason van Zyl
* @version $Id$

View File

@ -19,11 +19,11 @@ package org.apache.maven.artifact.installer;
* under the License.
*/
import java.io.File;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
import java.io.File;
/**
* @author <a href="michal@codehaus.org">Michal Maczka</a>
* @version $Id$

View File

@ -19,6 +19,9 @@ package org.apache.maven.artifact.installer;
* under the License.
*/
import java.io.File;
import java.io.IOException;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.metadata.ArtifactMetadata;
import org.apache.maven.artifact.repository.ArtifactRepository;
@ -30,9 +33,6 @@ import org.codehaus.plexus.component.annotations.Requirement;
import org.codehaus.plexus.logging.AbstractLogEnabled;
import org.codehaus.plexus.util.FileUtils;
import java.io.File;
import java.io.IOException;
/**
* @author Jason van Zyl
*/

View File

@ -19,14 +19,6 @@ package org.apache.maven.artifact.manager;
* under the License.
*/
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
import org.apache.maven.artifact.repository.metadata.RepositoryMetadata;
import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.logging.AbstractLogEnabled;
import org.codehaus.plexus.logging.Logger;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
@ -39,6 +31,14 @@ import java.nio.channels.FileLock;
import java.util.Date;
import java.util.Properties;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
import org.apache.maven.artifact.repository.metadata.RepositoryMetadata;
import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.logging.AbstractLogEnabled;
import org.codehaus.plexus.logging.Logger;
@Component(role=UpdateCheckManager.class)
public class DefaultUpdateCheckManager
extends AbstractLogEnabled

View File

@ -19,6 +19,9 @@ package org.apache.maven.artifact.manager;
* under the License.
*/
import java.io.File;
import java.util.List;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.metadata.ArtifactMetadata;
import org.apache.maven.artifact.repository.ArtifactRepository;
@ -29,9 +32,6 @@ import org.apache.maven.wagon.Wagon;
import org.apache.maven.wagon.events.TransferListener;
import org.apache.maven.wagon.repository.Repository;
import java.io.File;
import java.util.List;
/**
* Manages <a href="http://maven.apache.org/wagon">Wagon</a> related operations in Maven.
*

View File

@ -19,12 +19,12 @@ package org.apache.maven.artifact.metadata;
* under the License.
*/
import java.util.List;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.versioning.ArtifactVersion;
import java.util.List;
/**
* Provides some metadata operations, like querying the remote repository for a list of versions available for an
* artifact.

View File

@ -19,12 +19,12 @@ package org.apache.maven.artifact.metadata;
* under the License.
*/
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
import java.util.List;
import java.util.Set;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
public class ResolutionGroup
{

View File

@ -19,12 +19,12 @@ package org.apache.maven.artifact.repository;
* under the License.
*/
import java.io.File;
import org.apache.maven.artifact.InvalidRepositoryException;
import org.apache.maven.artifact.UnknownRepositoryLayoutException;
import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
import java.io.File;
/** @author jdcasey */
public interface ArtifactRepositoryFactory
{

View File

@ -19,17 +19,17 @@ package org.apache.maven.artifact.repository;
* under the License.
*/
import java.io.File;
import java.net.MalformedURLException;
import java.util.HashMap;
import java.util.Map;
import org.apache.maven.artifact.InvalidRepositoryException;
import org.apache.maven.artifact.UnknownRepositoryLayoutException;
import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.component.annotations.Requirement;
import java.io.File;
import java.net.MalformedURLException;
import java.util.HashMap;
import java.util.Map;
/**
* @author jdcasey
*/

View File

@ -19,6 +19,11 @@ package org.apache.maven.artifact.repository.metadata;
* under the License.
*/
import java.io.File;
import java.io.IOException;
import java.io.Reader;
import java.io.Writer;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.metadata.ArtifactMetadata;
import org.apache.maven.artifact.repository.ArtifactRepository;
@ -29,11 +34,6 @@ import org.codehaus.plexus.util.ReaderFactory;
import org.codehaus.plexus.util.WriterFactory;
import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
import java.io.File;
import java.io.IOException;
import java.io.Reader;
import java.io.Writer;
/**
* Shared methods of the repository metadata handling.
*

View File

@ -19,11 +19,11 @@ package org.apache.maven.artifact.repository.metadata;
* under the License.
*/
import java.util.List;
import org.apache.maven.artifact.metadata.ArtifactMetadata;
import org.apache.maven.artifact.repository.ArtifactRepository;
import java.util.List;
public interface RepositoryMetadataManager
{
void resolve( RepositoryMetadata repositoryMetadata,

View File

@ -19,13 +19,13 @@ package org.apache.maven.artifact.resolver;
* under the License.
*/
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
/**
* Base class for artifact resolution exceptions.
*

View File

@ -19,16 +19,16 @@ package org.apache.maven.artifact.resolver;
* under the License.
*/
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
import org.apache.maven.artifact.resolver.conflict.ConflictResolver;
import java.util.List;
import java.util.Map;
import java.util.Set;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.resolver.conflict.ConflictResolver;
import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
/**
* Artifact collector - takes a set of original artifacts and resolves all of the best versions to use
* along with their metadata. No artifacts are downloaded.

View File

@ -19,12 +19,12 @@ package org.apache.maven.artifact.resolver;
* under the License.
*/
import java.util.List;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.wagon.ResourceDoesNotExistException;
import java.util.List;
/**
* @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
* @version $Id$

View File

@ -19,15 +19,15 @@ package org.apache.maven.artifact.resolver;
* under the License.
*/
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
import org.apache.maven.artifact.repository.metadata.RepositoryMetadataResolutionException;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.wagon.TransferFailedException;
import java.io.IOException;
import java.util.List;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.repository.metadata.RepositoryMetadataResolutionException;
import org.apache.maven.wagon.TransferFailedException;
/**
* @author Jason van Zyl
* @version $Id$

View File

@ -46,7 +46,7 @@ public class ArtifactResolutionRequest
private boolean resolveRoot = true;
private boolean resolveDependencies = false;
private boolean resolveTransitively = false;
public ArtifactResolutionRequest()
{
@ -178,16 +178,16 @@ public class ArtifactResolutionRequest
return resolveRoot;
}
public ArtifactResolutionRequest setResolveDependencies( boolean resolveDependencies )
public ArtifactResolutionRequest setResolveTransitively( boolean resolveDependencies )
{
this.resolveDependencies = resolveDependencies;
this.resolveTransitively = resolveDependencies;
return this;
}
public boolean isResolveDependencies()
public boolean isResolveTransitively()
{
return resolveDependencies;
return resolveTransitively;
}
public TransferListener getTransferListener()

View File

@ -15,16 +15,16 @@ package org.apache.maven.artifact.resolver;
* the License.
*/
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.versioning.OverConstrainedVersionException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Set;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.versioning.OverConstrainedVersionException;
/**
* Specific problems during resolution that we want to account for:
* <p/>

View File

@ -19,13 +19,13 @@ package org.apache.maven.artifact.resolver;
* under the License.
*/
import java.util.HashSet;
import java.util.Set;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.versioning.VersionRange;
import org.codehaus.plexus.logging.Logger;
import java.util.Set;
import java.util.HashSet;
/**
* Send resolution events to the debug log.
*

View File

@ -19,6 +19,15 @@ package org.apache.maven.artifact.resolver;
* under the License.
*/
import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
@ -36,15 +45,6 @@ import org.codehaus.plexus.component.annotations.Requirement;
import org.codehaus.plexus.logging.LogEnabled;
import org.codehaus.plexus.logging.Logger;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
* Default implementation of the artifact collector.
*

View File

@ -421,7 +421,7 @@ public class DefaultArtifactResolver
}
}
if ( request.isResolveDependencies() )
if ( request.isResolveTransitively() )
{
try
{

View File

@ -19,12 +19,6 @@ package org.apache.maven.artifact.resolver;
* under the License.
*/
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
import org.apache.maven.artifact.versioning.ArtifactVersion;
import org.apache.maven.artifact.versioning.OverConstrainedVersionException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
@ -32,6 +26,12 @@ import java.util.LinkedList;
import java.util.List;
import java.util.Set;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
import org.apache.maven.artifact.versioning.ArtifactVersion;
import org.apache.maven.artifact.versioning.OverConstrainedVersionException;
public class ResolutionNode
{
private Artifact artifact;

View File

@ -1,10 +1,10 @@
package org.apache.maven.artifact.resolver;
import java.util.List;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
import java.util.List;
/**
* A simple recording of the Artifacts that could not be resolved for a given resolution request, along with
* the remote repositories where attempts were made to resolve the artifacts.

View File

@ -23,9 +23,6 @@ import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.versioning.VersionRange;
import org.codehaus.plexus.logging.Logger;
import java.util.HashSet;
import java.util.Set;
/**
* Send resolution warning events to the warning log.
*

View File

@ -3,7 +3,7 @@ package org.apache.maven.artifact.resolver.conflict;
import org.apache.maven.artifact.resolver.metadata.MetadataGraphEdge;
import org.apache.maven.artifact.versioning.ArtifactVersion;
import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.component.annotations.Configuration;
/**

View File

@ -19,6 +19,10 @@ package org.apache.maven.artifact.resolver.conflict;
* under the License.
*/
import java.util.ArrayList;
import java.util.List;
import java.util.TreeSet;
import org.apache.maven.artifact.ArtifactScopeEnum;
import org.apache.maven.artifact.resolver.metadata.ArtifactMetadata;
import org.apache.maven.artifact.resolver.metadata.MetadataGraph;
@ -28,10 +32,6 @@ import org.apache.maven.artifact.resolver.metadata.MetadataResolutionException;
import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.component.annotations.Requirement;
import java.util.ArrayList;
import java.util.List;
import java.util.TreeSet;
/**
* Default conflict resolver.Implements closer newer first policy by default, but could be configured via plexus
*

View File

@ -19,12 +19,12 @@ package org.apache.maven.artifact.resolver.filter;
* under the License.
*/
import org.apache.maven.artifact.Artifact;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import org.apache.maven.artifact.Artifact;
/**
* Apply multiple filters.
*

View File

@ -19,10 +19,10 @@ package org.apache.maven.artifact.resolver.filter;
* under the License.
*/
import org.apache.maven.artifact.Artifact;
import java.util.List;
import org.apache.maven.artifact.Artifact;
/**
* Filter to exclude from a list of artifact patterns.
*

View File

@ -19,12 +19,12 @@ package org.apache.maven.artifact.resolver.filter;
* under the License.
*/
import org.apache.maven.artifact.Artifact;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
import org.apache.maven.artifact.Artifact;
/**
* @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
* @version $Id$

View File

@ -19,11 +19,11 @@ package org.apache.maven.artifact.resolver.filter;
* under the License.
*/
import org.apache.maven.artifact.Artifact;
import java.util.Iterator;
import java.util.List;
import org.apache.maven.artifact.Artifact;
/**
* Filter to include from a list of artifact patterns.
*

View File

@ -19,10 +19,10 @@ package org.apache.maven.artifact.resolver.metadata;
* under the License.
*/
import org.apache.maven.artifact.repository.ArtifactRepository;
import java.util.List;
import org.apache.maven.artifact.repository.ArtifactRepository;
/**
* Provides some metadata operations, like querying the remote repository for a list of versions available for an
* artifact.

View File

@ -19,6 +19,8 @@ package org.apache.maven.artifact.transform;
* under the License.
*/
import java.util.List;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.manager.WagonManager;
import org.apache.maven.artifact.repository.ArtifactRepository;
@ -31,9 +33,6 @@ import org.apache.maven.artifact.repository.metadata.SnapshotArtifactRepositoryM
import org.apache.maven.artifact.repository.metadata.Versioning;
import org.codehaus.plexus.component.annotations.Requirement;
import org.codehaus.plexus.logging.AbstractLogEnabled;
import org.codehaus.plexus.component.annotations.Component;
import java.util.List;
/**
* Describes a version transformation during artifact resolution.

View File

@ -19,6 +19,8 @@ package org.apache.maven.artifact.transform;
* under the License.
*/
import java.util.List;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.deployer.ArtifactDeploymentException;
import org.apache.maven.artifact.installer.ArtifactInstallationException;
@ -26,8 +28,6 @@ import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
import org.apache.maven.artifact.resolver.ArtifactResolutionException;
import java.util.List;
/**
* @author <a href="mailto:jason@maven.org">Jason van Zyl </a>
* @version $Id: ArtifactTransformation.java,v 1.1 2005/03/03 15:37:25

View File

@ -19,6 +19,8 @@ package org.apache.maven.artifact.transform;
* under the License.
*/
import java.util.List;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.deployer.ArtifactDeploymentException;
import org.apache.maven.artifact.installer.ArtifactInstallationException;
@ -26,9 +28,6 @@ import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
import org.apache.maven.artifact.resolver.ArtifactResolutionException;
import java.util.List;
import java.util.Map;
/** Manages multiple ArtifactTransformation instances and applies them in succession. */
public interface ArtifactTransformationManager
{

View File

@ -19,6 +19,8 @@ package org.apache.maven.artifact.transform;
* under the License.
*/
import java.util.List;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.deployer.ArtifactDeploymentException;
import org.apache.maven.artifact.installer.ArtifactInstallationException;
@ -28,10 +30,6 @@ import org.apache.maven.artifact.resolver.ArtifactResolutionException;
import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.component.annotations.Requirement;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
/**
* @author Jason van Zyl
*/

View File

@ -19,6 +19,8 @@ package org.apache.maven.artifact.transform;
* under the License.
*/
import java.util.List;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.repository.metadata.RepositoryMetadataResolutionException;
@ -27,8 +29,6 @@ import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
import org.apache.maven.artifact.resolver.ArtifactResolutionException;
import org.codehaus.plexus.component.annotations.Component;
import java.util.List;
@Component(role=ArtifactTransformation.class, hint="latest")
public class LatestArtifactTransformation
extends AbstractVersionTransformation

View File

@ -19,6 +19,8 @@ package org.apache.maven.artifact.transform;
* under the License.
*/
import java.util.List;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.metadata.ArtifactMetadata;
import org.apache.maven.artifact.repository.ArtifactRepository;
@ -29,8 +31,6 @@ import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
import org.apache.maven.artifact.resolver.ArtifactResolutionException;
import org.codehaus.plexus.component.annotations.Component;
import java.util.List;
/**
* Change the version <code>RELEASE</code> to the appropriate release version from the remote repository.
*

View File

@ -19,6 +19,12 @@ package org.apache.maven.artifact.transform;
* under the License.
*/
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.TimeZone;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.deployer.ArtifactDeploymentException;
import org.apache.maven.artifact.repository.ArtifactRepository;
@ -32,12 +38,6 @@ import org.apache.maven.artifact.resolver.ArtifactResolutionException;
import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.util.StringUtils;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.TimeZone;
/**
* @author <a href="mailto:brett@apache.org">Brett Porter</a>
* @author <a href="mailto:mmaczka@interia.pl">Michal Maczka</a>

View File

@ -20,8 +20,8 @@ package org.apache.maven.artifact.versioning;
*/
import java.util.HashMap;
import java.util.Map;
import java.util.Iterator;
import java.util.Map;
public class ManagedVersionMap
extends HashMap

View File

@ -19,12 +19,12 @@ package org.apache.maven.artifact.versioning;
* under the License.
*/
import java.util.List;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.resolver.ArtifactResolutionException;
import java.util.List;
/**
* Occurs when ranges exclude each other and no valid value remains.
*

View File

@ -19,10 +19,19 @@ package org.apache.maven.project;
* under the License.
*/
import org.apache.maven.model.*;
import org.codehaus.plexus.util.xml.Xpp3Dom;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.TreeMap;
import java.util.*;
import org.apache.maven.model.Dependency;
import org.apache.maven.model.Plugin;
import org.apache.maven.model.PluginContainer;
import org.apache.maven.model.PluginExecution;
import org.apache.maven.model.Repository;
import org.codehaus.plexus.util.xml.Xpp3Dom;
/** @deprecated */
@Deprecated

View File

@ -19,12 +19,6 @@ package org.apache.maven.project.inheritance;
* under the License.
*/
import org.apache.maven.model.*;
import org.apache.maven.project.ModelUtils;
import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.util.StringUtils;
import org.codehaus.plexus.util.xml.Xpp3Dom;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.LinkedHashMap;
@ -35,6 +29,25 @@ import java.util.Properties;
import java.util.StringTokenizer;
import java.util.TreeMap;
import org.apache.maven.model.Build;
import org.apache.maven.model.Dependency;
import org.apache.maven.model.DependencyManagement;
import org.apache.maven.model.DeploymentRepository;
import org.apache.maven.model.DistributionManagement;
import org.apache.maven.model.Extension;
import org.apache.maven.model.Model;
import org.apache.maven.model.PluginManagement;
import org.apache.maven.model.ReportPlugin;
import org.apache.maven.model.ReportSet;
import org.apache.maven.model.Reporting;
import org.apache.maven.model.Resource;
import org.apache.maven.model.Scm;
import org.apache.maven.model.Site;
import org.apache.maven.project.ModelUtils;
import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.util.StringUtils;
import org.codehaus.plexus.util.xml.Xpp3Dom;
@Component(role = ModelInheritanceAssembler.class)
public class DefaultModelInheritanceAssembler
implements ModelInheritanceAssembler

View File

@ -19,10 +19,10 @@ package org.apache.maven.project.path;
* under the License.
*/
import org.apache.maven.model.Model;
import java.io.File;
import org.apache.maven.model.Model;
/**
* @author Jason van Zyl
* @version $Id$

View File

@ -19,13 +19,6 @@ package org.apache.maven.artifact;
* under the License.
*/
import org.apache.maven.artifact.factory.ArtifactFactory;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
import org.apache.maven.artifact.repository.DefaultArtifactRepository;
import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
import org.codehaus.plexus.PlexusTestCase;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
@ -34,6 +27,13 @@ import java.io.Writer;
import java.util.ArrayList;
import java.util.List;
import org.apache.maven.artifact.factory.ArtifactFactory;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
import org.apache.maven.artifact.repository.DefaultArtifactRepository;
import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
import org.codehaus.plexus.PlexusTestCase;
/**
* @author <a href="mailto:jason@maven.org">Jason van Zyl </a>
* @version $Id$

View File

@ -19,11 +19,11 @@ package org.apache.maven.artifact;
* under the License.
*/
import junit.framework.TestCase;
import org.apache.maven.artifact.handler.ArtifactHandlerMock;
import org.apache.maven.artifact.versioning.VersionRange;
import junit.framework.TestCase;
public class DefaultArtifactTest
extends TestCase
{

View File

@ -19,13 +19,13 @@ package org.apache.maven.artifact.deployer;
* under the License.
*/
import java.io.File;
import org.apache.maven.artifact.AbstractArtifactComponentTestCase;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.codehaus.plexus.util.FileUtils;
import java.io.File;
/**
* @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
* @version $Id$

View File

@ -19,6 +19,9 @@ package org.apache.maven.artifact.deployer;
* under the License.
*/
import java.util.Collections;
import java.util.List;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
@ -27,9 +30,6 @@ import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.versioning.ArtifactVersion;
import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
import java.util.Collections;
import java.util.List;
/** @author Jason van Zyl */
public class SimpleArtifactMetadataSource
implements ArtifactMetadataSource

View File

@ -19,11 +19,11 @@ package org.apache.maven.artifact.installer;
* under the License.
*/
import java.io.File;
import org.apache.maven.artifact.AbstractArtifactComponentTestCase;
import org.apache.maven.artifact.Artifact;
import java.io.File;
/**
* @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
* @version $Id$

View File

@ -19,6 +19,17 @@ package org.apache.maven.artifact.resolver;
* under the License.
*/
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.factory.ArtifactFactory;
import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
@ -35,17 +46,6 @@ import org.apache.maven.artifact.versioning.OverConstrainedVersionException;
import org.apache.maven.artifact.versioning.VersionRange;
import org.codehaus.plexus.PlexusTestCase;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
* Test the default artifact collector.
*

View File

@ -19,12 +19,12 @@ package org.apache.maven.artifact.testutils;
* under the License.
*/
import org.easymock.MockControl;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import org.easymock.MockControl;
public class MockManager
{

View File

@ -38,15 +38,16 @@ package org.apache.maven.artifact.testutils;
* under the License.
*/
import junit.framework.Assert;
import org.codehaus.plexus.util.FileUtils;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import junit.framework.Assert;
import org.codehaus.plexus.util.FileUtils;
public class TestFileManager
{

View File

@ -1,11 +1,5 @@
package org.apache.maven.artifact.transform;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.Map;
import java.util.TreeSet;
import org.apache.maven.artifact.ArtifactScopeEnum;
import org.apache.maven.artifact.resolver.metadata.ArtifactMetadata;
import org.apache.maven.artifact.resolver.metadata.MetadataGraph;

View File

@ -1,9 +1,9 @@
package org.apache.maven.artifact.transform;
import org.codehaus.plexus.PlexusTestCase;
import java.util.List;
import org.codehaus.plexus.PlexusTestCase;
/** @author Jason van Zyl */
public class TransformationManagerTest
extends PlexusTestCase

View File

@ -19,10 +19,10 @@ package org.apache.maven.artifact.versioning;
* under the License.
*/
import junit.framework.TestCase;
import java.util.List;
import junit.framework.TestCase;
import org.apache.maven.artifact.Artifact;
/**

View File

@ -19,13 +19,13 @@ package org.apache.maven;
* under the License.
*/
import java.util.HashSet;
import java.util.Set;
import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
import org.apache.maven.artifact.resolver.filter.ExclusionSetFilter;
import org.codehaus.plexus.component.annotations.Component;
import java.util.HashSet;
import java.util.Set;
/**
* @author Jason van Zyl
* @version $Id$

View File

@ -17,6 +17,7 @@ package org.apache.maven;
import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
@ -79,6 +80,12 @@ public class DefaultMaven
public MavenExecutionResult execute( MavenExecutionRequest request )
{
// Need a general way to inject standard properties
if ( request.getStartTime() != null )
{
request.getProperties().put( "${build.timestamp}", new SimpleDateFormat( "yyyyMMdd-hhmm" ).format( request.getStartTime() ) );
}
request.setStartTime( new Date() );
MavenExecutionResult result = new DefaultMavenExecutionResult();

View File

@ -23,7 +23,6 @@ import java.util.List;
import org.apache.maven.execution.MavenExecutionRequest;
import org.apache.maven.execution.MavenExecutionResult;
import org.apache.maven.execution.ReactorManager;
/**
* @author Jason van Zyl

View File

@ -1,10 +1,10 @@
package org.apache.maven;
import java.util.List;
import org.apache.maven.execution.ReactorManager;
import org.codehaus.plexus.util.dag.CycleDetectedException;
import java.util.List;
/**
* Exception which occurs when creating a new {@link ReactorManager} instance,
* due to failure to sort the current projects. The embedded {@link CycleDetectedException}

View File

@ -30,6 +30,7 @@ All Possible Errors
- plugin execution failure due to something that is know to possibly go wrong (like compilation failure)
- plugin execution error due to something that is not expected to go wrong (the compiler executable missing)
- md5 checksum doesn't match for local artifact, need to redownload this
- asking to use a plugin for which you do not have a version defined - tools to easily select versions
brett:
- transitive dependency problems - tracking down

View File

@ -701,7 +701,6 @@ public class DefaultMavenExecutionRequest
projectBuildingConfiguration.setLocalRepository( getLocalRepository() );
projectBuildingConfiguration.setExecutionProperties( getProperties() );
projectBuildingConfiguration.setGlobalProfileManager( getProfileManager() );
projectBuildingConfiguration.setBuildStartTime( getStartTime() );
projectBuildingConfiguration.setRemoteRepositories( getRemoteRepositories() );
}

View File

@ -299,12 +299,9 @@ public class DefaultLifecycleExecutor
MojoDescriptor md = getMojoDescriptor( s, session.getCurrentProject(), session.getLocalRepository() );
// need to know if this plugin belongs to a phase in the lifecycle that's running
if ( md.getPhase() != null && lifecycle.getPhases().contains( md.getPhase() ) )
{
if ( phaseToMojoMapping.get( md.getPhase() ) != null )
{
phaseToMojoMapping.get( md.getPhase() ).add( s );
}
if ( md.getPhase() != null && phaseToMojoMapping.get( md.getPhase() ) != null )
{
phaseToMojoMapping.get( md.getPhase() ).add( s );
}
//TODO Here we need to break when we have reached the desired phase.
@ -590,4 +587,201 @@ public class DefaultLifecycleExecutor
return dom;
}
// These are checks that should be available in real time to IDEs
/*
checkRequiredMavenVersion( plugin, localRepository, project.getRemoteArtifactRepositories() );
// Validate against non-editable (@readonly) parameters, to make sure users aren't trying to override in the POM.
//validatePomConfiguration( mojoDescriptor, pomConfiguration );
//checkDeprecatedParameters( mojoDescriptor, pomConfiguration );
//checkRequiredParameters( mojoDescriptor, pomConfiguration, expressionEvaluator );
public void checkRequiredMavenVersion( Plugin plugin, ArtifactRepository localRepository, List<ArtifactRepository> remoteRepositories )
throws PluginVersionResolutionException, InvalidPluginException
{
// if we don't have the required Maven version, then ignore an update
if ( ( pluginProject.getPrerequisites() != null ) && ( pluginProject.getPrerequisites().getMaven() != null ) )
{
DefaultArtifactVersion requiredVersion = new DefaultArtifactVersion( pluginProject.getPrerequisites().getMaven() );
if ( runtimeInformation.getApplicationInformation().getVersion().compareTo( requiredVersion ) < 0 )
{
throw new PluginVersionResolutionException( plugin.getGroupId(), plugin.getArtifactId(), "Plugin requires Maven version " + requiredVersion );
}
}
}
private void checkDeprecatedParameters( MojoDescriptor mojoDescriptor, PlexusConfiguration extractedMojoConfiguration )
throws PlexusConfigurationException
{
if ( ( extractedMojoConfiguration == null ) || ( extractedMojoConfiguration.getChildCount() < 1 ) )
{
return;
}
List<Parameter> parameters = mojoDescriptor.getParameters();
if ( ( parameters != null ) && !parameters.isEmpty() )
{
for ( Parameter param : parameters )
{
if ( param.getDeprecated() != null )
{
boolean warnOfDeprecation = false;
PlexusConfiguration child = extractedMojoConfiguration.getChild( param.getName() );
if ( ( child != null ) && ( child.getValue() != null ) )
{
warnOfDeprecation = true;
}
else if ( param.getAlias() != null )
{
child = extractedMojoConfiguration.getChild( param.getAlias() );
if ( ( child != null ) && ( child.getValue() != null ) )
{
warnOfDeprecation = true;
}
}
if ( warnOfDeprecation )
{
StringBuffer buffer = new StringBuffer();
buffer.append( "In mojo: " ).append( mojoDescriptor.getGoal() ).append( ", parameter: " ).append( param.getName() );
if ( param.getAlias() != null )
{
buffer.append( " (alias: " ).append( param.getAlias() ).append( ")" );
}
buffer.append( " is deprecated:" ).append( "\n\n" ).append( param.getDeprecated() ).append( "\n" );
logger.warn( buffer.toString() );
}
}
}
}
}
private void checkRequiredParameters( MojoDescriptor goal, PlexusConfiguration configuration, ExpressionEvaluator expressionEvaluator )
throws PluginConfigurationException
{
// TODO: this should be built in to the configurator, as we presently double process the expressions
List<Parameter> parameters = goal.getParameters();
if ( parameters == null )
{
return;
}
List<Parameter> invalidParameters = new ArrayList<Parameter>();
for ( int i = 0; i < parameters.size(); i++ )
{
Parameter parameter = parameters.get( i );
if ( parameter.isRequired() )
{
// the key for the configuration map we're building.
String key = parameter.getName();
Object fieldValue = null;
String expression = null;
PlexusConfiguration value = configuration.getChild( key, false );
try
{
if ( value != null )
{
expression = value.getValue( null );
fieldValue = expressionEvaluator.evaluate( expression );
if ( fieldValue == null )
{
fieldValue = value.getAttribute( "default-value", null );
}
}
if ( ( fieldValue == null ) && StringUtils.isNotEmpty( parameter.getAlias() ) )
{
value = configuration.getChild( parameter.getAlias(), false );
if ( value != null )
{
expression = value.getValue( null );
fieldValue = expressionEvaluator.evaluate( expression );
if ( fieldValue == null )
{
fieldValue = value.getAttribute( "default-value", null );
}
}
}
}
catch ( ExpressionEvaluationException e )
{
throw new PluginConfigurationException( goal.getPluginDescriptor(), e.getMessage(), e );
}
// only mark as invalid if there are no child nodes
if ( ( fieldValue == null ) && ( ( value == null ) || ( value.getChildCount() == 0 ) ) )
{
parameter.setExpression( expression );
invalidParameters.add( parameter );
}
}
}
if ( !invalidParameters.isEmpty() )
{
throw new PluginParameterException( goal, invalidParameters );
}
}
private void validatePomConfiguration( MojoDescriptor goal, PlexusConfiguration pomConfiguration )
throws PluginConfigurationException
{
List<Parameter> parameters = goal.getParameters();
if ( parameters == null )
{
return;
}
for ( int i = 0; i < parameters.size(); i++ )
{
Parameter parameter = parameters.get( i );
// the key for the configuration map we're building.
String key = parameter.getName();
PlexusConfiguration value = pomConfiguration.getChild( key, false );
if ( ( value == null ) && StringUtils.isNotEmpty( parameter.getAlias() ) )
{
key = parameter.getAlias();
value = pomConfiguration.getChild( key, false );
}
if ( value != null )
{
// Make sure the parameter is either editable/configurable, or else is NOT specified in the POM
if ( !parameter.isEditable() )
{
StringBuffer errorMessage = new StringBuffer().append( "ERROR: Cannot override read-only parameter: " );
errorMessage.append( key );
errorMessage.append( " in goal: " ).append( goal.getFullGoalName() );
throw new PluginConfigurationException( goal.getPluginDescriptor(), errorMessage.toString() );
}
String deprecated = parameter.getDeprecated();
if ( StringUtils.isNotEmpty( deprecated ) )
{
logger.warn( "DEPRECATED [" + parameter.getName() + "]: " + deprecated );
}
}
}
}
*/
}

View File

@ -43,13 +43,11 @@ import org.apache.maven.artifact.resolver.ResolutionErrorHandler;
import org.apache.maven.artifact.resolver.filter.AndArtifactFilter;
import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
import org.apache.maven.artifact.resolver.filter.ScopeArtifactFilter;
import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
import org.apache.maven.execution.MavenSession;
import org.apache.maven.execution.RuntimeInformation;
import org.apache.maven.model.Dependency;
import org.apache.maven.model.Plugin;
import org.apache.maven.monitor.logging.DefaultLog;
import org.apache.maven.plugin.descriptor.MojoDescriptor;
import org.apache.maven.plugin.descriptor.Parameter;
import org.apache.maven.plugin.descriptor.PluginDescriptor;
import org.apache.maven.plugin.descriptor.PluginDescriptorBuilder;
import org.apache.maven.project.DuplicateArtifactAttachmentException;
@ -64,7 +62,6 @@ import org.codehaus.plexus.component.annotations.Requirement;
import org.codehaus.plexus.component.configurator.ComponentConfigurationException;
import org.codehaus.plexus.component.configurator.ComponentConfigurator;
import org.codehaus.plexus.component.configurator.ConfigurationListener;
import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluationException;
import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluator;
import org.codehaus.plexus.component.discovery.ComponentDiscoverer;
import org.codehaus.plexus.component.discovery.ComponentDiscoveryEvent;
@ -87,13 +84,9 @@ import org.codehaus.plexus.util.StringUtils;
import org.codehaus.plexus.util.xml.Xpp3Dom;
// TODO: get plugin groups
// TODO: separate out project downloading
// TODO: template method plugin validation as its framework specific
// TODO: separate out project downloading, something should decide before the plugin executes. it should not happen inside this
// TODO: the antrun plugin has its own configurator, the only plugin that does. might need to think about how that works
// TODO: remove the coreArtifactFilterManager
// TODO: remove the runtimeInformation
// TODO: move deprecated parameter check outside of the plugin manager
// TODO: move checkRequiredMavenVersion to lifecycle executor, don't run 5 out of 10 plugins and then blow up ...
@Component(role = PluginManager.class)
public class DefaultPluginManager
@ -114,9 +107,6 @@ public class DefaultPluginManager
@Requirement
private ResolutionErrorHandler resolutionErrorHandler;
@Requirement
protected RuntimeInformation runtimeInformation;
private Map<String, PluginDescriptor> pluginDescriptors;
public DefaultPluginManager()
@ -150,17 +140,19 @@ public class DefaultPluginManager
return addPlugin( plugin, project, localRepository );
}
catch ( ArtifactResolutionException e )
// PluginResolutionException - a problem that occurs resolving the plugin artifact or its deps
{
throw new PluginLoaderException( plugin, "Failed to load plugin. Reason: " + e.getMessage(), e );
}
catch ( ArtifactNotFoundException e )
// PluginNotFoundException - the plugin itself cannot be found in any repositories
{
throw new PluginLoaderException( plugin, "Failed to load plugin. Reason: " + e.getMessage(), e );
}
catch ( InvalidPluginException e )
{
throw new PluginLoaderException( plugin, "Failed to load plugin. Reason: " + e.getMessage(), e );
}
// catch ( InvalidPluginException e )
// {
// throw new PluginLoaderException( plugin, "Failed to load plugin. Reason: " + e.getMessage(), e );
// }
catch ( PluginVersionResolutionException e )
{
throw new PluginLoaderException( plugin, "Failed to load plugin. Reason: " + e.getMessage(), e );
@ -181,19 +173,16 @@ public class DefaultPluginManager
}
protected PluginDescriptor addPlugin( Plugin plugin, MavenProject project, ArtifactRepository localRepository )
throws ArtifactNotFoundException, ArtifactResolutionException, InvalidPluginException, PluginVersionResolutionException, PluginContainerException, PluginVersionNotFoundException
throws ArtifactNotFoundException, ArtifactResolutionException, PluginVersionResolutionException, PluginContainerException, PluginVersionNotFoundException
{
resolvePluginVersion( plugin, project );
//MavenProject pluginProject = buildPluginProject( plugin, localRepository, new ArrayList( project.getRemoteArtifactRepositories() ) );
Artifact pluginArtifact = repositorySystem.createPluginArtifact( plugin );
//checkRequiredMavenVersion( plugin, pluginProject, localRepository, new ArrayList( project.getRemoteArtifactRepositories() ) );
//TODO: this is assuming plugins in the reactor. must be replaced with a reactor local repository implementation
pluginArtifact = project.replaceWithActiveArtifact( pluginArtifact );
ArtifactResolutionRequest request = new ArtifactResolutionRequest( pluginArtifact, localRepository, new ArrayList( project.getRemoteArtifactRepositories() ) );
ArtifactResolutionRequest request = new ArtifactResolutionRequest( pluginArtifact, localRepository, project.getRemoteArtifactRepositories() );
ArtifactResolutionResult result = repositorySystem.resolve( request );
@ -244,75 +233,39 @@ public class DefaultPluginManager
// its dependencies while filtering out what's in the core
// layering on the project level plugin dependencies
private Set<Artifact> getPluginArtifacts( Artifact pluginArtifact, Plugin plugin, MavenProject project, ArtifactRepository localRepository )
throws InvalidPluginException, ArtifactNotFoundException, ArtifactResolutionException
private Set<Artifact> getPluginArtifacts( Artifact pluginArtifact, Plugin pluginAsSpecifiedinPom, MavenProject project, ArtifactRepository localRepository )
throws ArtifactNotFoundException, ArtifactResolutionException
{
AndArtifactFilter filter = new AndArtifactFilter();
filter.add( coreArtifactFilterManager.getCoreArtifactFilter() );
filter.add( new ScopeArtifactFilter( Artifact.SCOPE_RUNTIME_PLUS_SYSTEM ) );
Set<Artifact> projectPluginDependencies;
Set<Artifact> dependenciesToResolveForPlugin = new LinkedHashSet<Artifact>();
// The case where we have a plugin that can host multiple versions of a particular tool. Say the
// Antlr plugin which has many versions and you may want the plugin to execute with version 2.7.1 of
// Antlr versus 2.7.2. In this case the project itself would specify dependencies within the plugin
// element.
try
// These dependencies might called override dependencies. We want anything in this set of override
// any of the resolved dependencies of the plugin artifact.
// We would almost always want the everything to be resolved from the root but we have this special case
// of overrides from the project itself which confused the interface.
for( Dependency dependencySpecifiedInProject : pluginAsSpecifiedinPom.getDependencies() )
{
projectPluginDependencies = repositorySystem.createArtifacts( plugin.getDependencies(), null, filter, project );
dependenciesToResolveForPlugin.add( repositorySystem.createDependencyArtifact( dependencySpecifiedInProject ) );
}
catch ( VersionNotFoundException e )
{
InvalidDependencyVersionException ee = new InvalidDependencyVersionException( e.getProjectId(), e.getDependency(), e.getPomFile(), e.getCauseException() );
throw new InvalidPluginException( "Plugin '" + plugin + "' is invalid: " + e.getMessage(), ee );
}
Map<String, Artifact> pluginManagedDependencies = new HashMap<String, Artifact>();
List<Artifact> pluginArtifacts = new ArrayList<Artifact>();
/*
try
{
Artifact pluginPomArtifact = repositorySystem.createProjectArtifact( pluginArtifact.getGroupId(), pluginArtifact.getArtifactId(), pluginArtifact.getVersion() );
// This does not populate the artifacts of the dependenct projects
MavenProject pluginProject = mavenProjectBuilder.buildFromRepository( pluginPomArtifact, new ArrayList( project.getRemoteArtifactRepositories() ), localRepository );
// This needs to be changed so that the resolver deals with this
for ( Dependency d : pluginProject.getDependencies() )
{
pluginArtifacts.add( repositorySystem.createArtifact( d.getGroupId(), d.getArtifactId(), d.getVersion(), d.getScope(), d.getType() ) );
}
if ( pluginProject != null )
{
pluginManagedDependencies = pluginProject.getManagedVersionMap();
}
}
catch ( ProjectBuildingException e )
{
throw new InvalidPluginException( "Error resolving plugin POM " + e.getMessage() );
}
*/
Set<Artifact> dependencies = new LinkedHashSet<Artifact>();
// resolve the plugin dependencies specified in <plugin><dependencies> first:
dependencies.addAll( projectPluginDependencies );
// followed by the plugin's default artifact set
dependencies.addAll( pluginArtifacts );
ArtifactResolutionRequest request = new ArtifactResolutionRequest()
.setArtifact( pluginArtifact )
.setArtifactDependencies( dependencies )
// So this in fact are overrides ...
.setArtifactDependencies( dependenciesToResolveForPlugin )
.setLocalRepository( localRepository )
.setRemoteRepostories( new ArrayList( project.getRemoteArtifactRepositories() ) )
.setManagedVersionMap( pluginManagedDependencies )
.setRemoteRepostories( project.getRemoteArtifactRepositories() )
.setFilter( filter )
.setResolveDependencies( true )
.setResolveTransitively( true )
.setResolveRoot( true ); // We are setting this to false because the artifact itself has been resolved.
ArtifactResolutionResult result = repositorySystem.resolve( request );
@ -320,6 +273,7 @@ public class DefaultPluginManager
Set<Artifact> resolved = new LinkedHashSet<Artifact>();
//TODO: this is also assuming artifacts in the reactor.
for ( Iterator<Artifact> it = result.getArtifacts().iterator(); it.hasNext(); )
{
Artifact artifact = it.next();
@ -475,248 +429,57 @@ public class DefaultPluginManager
ClassLoader oldClassLoader = Thread.currentThread().getContextClassLoader();
Thread.currentThread().setContextClassLoader( pluginRealm );
logger.debug( "Looking up mojo " + mojoDescriptor.getRoleHint() + " in realm " + pluginRealm.getId() + " - descRealmId=" + mojoDescriptor.getRealm() );
Mojo mojo;
try
{
logger.debug( "Looking up mojo " + mojoDescriptor.getRoleHint() + " in realm " + pluginRealm.getId() + " - descRealmId=" + mojoDescriptor.getRealm() );
Mojo mojo;
try
{
mojo = container.lookup( Mojo.class, mojoDescriptor.getRoleHint() );
}
catch ( ComponentLookupException e )
{
throw new PluginContainerException( mojoDescriptor, pluginRealm, "Unable to find the mojo '" + mojoDescriptor.getRoleHint() + "' in the plugin '"
+ pluginDescriptor.getPluginLookupKey() + "'", e );
}
if ( mojo instanceof ContextEnabled )
{
Map<String, Object> pluginContext = session.getPluginContext( pluginDescriptor, project );
if ( pluginContext != null )
{
pluginContext.put( "project", project );
pluginContext.put( "pluginDescriptor", pluginDescriptor );
( (ContextEnabled) mojo ).setPluginContext( pluginContext );
}
}
mojo.setLog( new DefaultLog( logger ) );
Xpp3Dom dom = mojoExecution.getConfiguration();
PlexusConfiguration pomConfiguration;
if ( dom == null )
{
pomConfiguration = new XmlPlexusConfiguration( "configuration" );
}
else
{
pomConfiguration = new XmlPlexusConfiguration( dom );
}
// Validate against non-editable (@readonly) parameters, to make sure users aren't trying to
// override in the POM.
ExpressionEvaluator expressionEvaluator = new PluginParameterExpressionEvaluator( session, mojoExecution );
// This stuff is moved to the lifecycle executor
//validatePomConfiguration( mojoDescriptor, pomConfiguration );
checkDeprecatedParameters( mojoDescriptor, pomConfiguration );
checkRequiredParameters( mojoDescriptor, pomConfiguration, expressionEvaluator );
//
populatePluginFields( mojo, mojoDescriptor, pomConfiguration, expressionEvaluator );
return mojo;
mojo = container.lookup( Mojo.class, mojoDescriptor.getRoleHint() );
}
catch ( PlexusConfigurationException e )
catch ( ComponentLookupException e )
{
throw new PluginConfigurationException( pluginDescriptor, "Error checking parameters: " + e.getMessage() );
}
finally
{
Thread.currentThread().setContextClassLoader( oldClassLoader );
}
}
private void checkDeprecatedParameters( MojoDescriptor mojoDescriptor, PlexusConfiguration extractedMojoConfiguration )
throws PlexusConfigurationException
{
if ( ( extractedMojoConfiguration == null ) || ( extractedMojoConfiguration.getChildCount() < 1 ) )
{
return;
throw new PluginContainerException( mojoDescriptor, pluginRealm, "Unable to find the mojo '" + mojoDescriptor.getRoleHint() + "' in the plugin '" + pluginDescriptor.getPluginLookupKey()
+ "'", e );
}
List<Parameter> parameters = mojoDescriptor.getParameters();
if ( ( parameters != null ) && !parameters.isEmpty() )
if ( mojo instanceof ContextEnabled )
{
for ( Parameter param : parameters )
Map<String, Object> pluginContext = session.getPluginContext( pluginDescriptor, project );
if ( pluginContext != null )
{
if ( param.getDeprecated() != null )
{
boolean warnOfDeprecation = false;
PlexusConfiguration child = extractedMojoConfiguration.getChild( param.getName() );
pluginContext.put( "project", project );
if ( ( child != null ) && ( child.getValue() != null ) )
{
warnOfDeprecation = true;
}
else if ( param.getAlias() != null )
{
child = extractedMojoConfiguration.getChild( param.getAlias() );
if ( ( child != null ) && ( child.getValue() != null ) )
{
warnOfDeprecation = true;
}
}
pluginContext.put( "pluginDescriptor", pluginDescriptor );
if ( warnOfDeprecation )
{
StringBuffer buffer = new StringBuffer();
buffer.append( "In mojo: " ).append( mojoDescriptor.getGoal() ).append( ", parameter: " ).append( param.getName() );
if ( param.getAlias() != null )
{
buffer.append( " (alias: " ).append( param.getAlias() ).append( ")" );
}
buffer.append( " is deprecated:" ).append( "\n\n" ).append( param.getDeprecated() ).append( "\n" );
logger.warn( buffer.toString() );
}
}
}
}
}
private void checkRequiredParameters( MojoDescriptor goal, PlexusConfiguration configuration, ExpressionEvaluator expressionEvaluator )
throws PluginConfigurationException
{
// TODO: this should be built in to the configurator, as we presently double process the expressions
List<Parameter> parameters = goal.getParameters();
if ( parameters == null )
{
return;
}
List<Parameter> invalidParameters = new ArrayList<Parameter>();
for ( int i = 0; i < parameters.size(); i++ )
{
Parameter parameter = parameters.get( i );
if ( parameter.isRequired() )
{
// the key for the configuration map we're building.
String key = parameter.getName();
Object fieldValue = null;
String expression = null;
PlexusConfiguration value = configuration.getChild( key, false );
try
{
if ( value != null )
{
expression = value.getValue( null );
fieldValue = expressionEvaluator.evaluate( expression );
if ( fieldValue == null )
{
fieldValue = value.getAttribute( "default-value", null );
}
}
if ( ( fieldValue == null ) && StringUtils.isNotEmpty( parameter.getAlias() ) )
{
value = configuration.getChild( parameter.getAlias(), false );
if ( value != null )
{
expression = value.getValue( null );
fieldValue = expressionEvaluator.evaluate( expression );
if ( fieldValue == null )
{
fieldValue = value.getAttribute( "default-value", null );
}
}
}
}
catch ( ExpressionEvaluationException e )
{
throw new PluginConfigurationException( goal.getPluginDescriptor(), e.getMessage(), e );
}
// only mark as invalid if there are no child nodes
if ( ( fieldValue == null ) && ( ( value == null ) || ( value.getChildCount() == 0 ) ) )
{
parameter.setExpression( expression );
invalidParameters.add( parameter );
}
( (ContextEnabled) mojo ).setPluginContext( pluginContext );
}
}
if ( !invalidParameters.isEmpty() )
mojo.setLog( new DefaultLog( logger ) );
Xpp3Dom dom = mojoExecution.getConfiguration();
PlexusConfiguration pomConfiguration;
if ( dom == null )
{
throw new PluginParameterException( goal, invalidParameters );
pomConfiguration = new XmlPlexusConfiguration( "configuration" );
}
}
private void validatePomConfiguration( MojoDescriptor goal, PlexusConfiguration pomConfiguration )
throws PluginConfigurationException
{
List<Parameter> parameters = goal.getParameters();
if ( parameters == null )
else
{
return;
pomConfiguration = new XmlPlexusConfiguration( dom );
}
for ( int i = 0; i < parameters.size(); i++ )
{
Parameter parameter = parameters.get( i );
ExpressionEvaluator expressionEvaluator = new PluginParameterExpressionEvaluator( session, mojoExecution );
// the key for the configuration map we're building.
String key = parameter.getName();
populatePluginFields( mojo, mojoDescriptor, pomConfiguration, expressionEvaluator );
PlexusConfiguration value = pomConfiguration.getChild( key, false );
Thread.currentThread().setContextClassLoader( oldClassLoader );
if ( ( value == null ) && StringUtils.isNotEmpty( parameter.getAlias() ) )
{
key = parameter.getAlias();
value = pomConfiguration.getChild( key, false );
}
if ( value != null )
{
// Make sure the parameter is either editable/configurable, or else is NOT specified in the POM
if ( !parameter.isEditable() )
{
StringBuffer errorMessage = new StringBuffer().append( "ERROR: Cannot override read-only parameter: " );
errorMessage.append( key );
errorMessage.append( " in goal: " ).append( goal.getFullGoalName() );
throw new PluginConfigurationException( goal.getPluginDescriptor(), errorMessage.toString() );
}
String deprecated = parameter.getDeprecated();
if ( StringUtils.isNotEmpty( deprecated ) )
{
logger.warn( "DEPRECATED [" + parameter.getName() + "]: " + deprecated );
}
}
}
return mojo;
}
// ----------------------------------------------------------------------
@ -814,23 +577,6 @@ public class DefaultPluginManager
}
}
public static String createPluginParameterRequiredMessage( MojoDescriptor mojo, Parameter parameter, String expression )
{
StringBuffer message = new StringBuffer();
message.append( "The '" );
message.append( parameter.getName() );
message.append( "' parameter is required for the execution of the " );
message.append( mojo.getFullGoalName() );
message.append( " mojo and cannot be null." );
if ( expression != null )
{
message.append( " The retrieval expression was: " ).append( expression );
}
return message.toString();
}
// ----------------------------------------------------------------------
// Artifact downloading
// ----------------------------------------------------------------------
@ -862,8 +608,13 @@ public class DefaultPluginManager
ArtifactFilter filter = new ScopeArtifactFilter( scope );
ArtifactResolutionRequest request = new ArtifactResolutionRequest().setArtifact( artifact ).setResolveRoot( false ).setArtifactDependencies( project.getDependencyArtifacts() )
.setLocalRepository( session.getLocalRepository() ).setRemoteRepostories( new ArrayList( project.getRemoteArtifactRepositories() ) ).setManagedVersionMap( project.getManagedVersionMap() )
ArtifactResolutionRequest request = new ArtifactResolutionRequest()
.setArtifact( artifact )
.setResolveRoot( false )
.setArtifactDependencies( project.getDependencyArtifacts() )
.setLocalRepository( session.getLocalRepository() )
.setRemoteRepostories( project.getRemoteArtifactRepositories() )
.setManagedVersionMap( project.getManagedVersionMap() )
.setFilter( filter );
ArtifactResolutionResult result = repositorySystem.resolve( request );
@ -873,7 +624,7 @@ public class DefaultPluginManager
project.setArtifacts( result.getArtifacts() );
ArtifactRepository localRepository = session.getLocalRepository();
List<ArtifactRepository> remoteArtifactRepositories = new ArrayList( session.getCurrentProject().getRemoteArtifactRepositories() );
List<ArtifactRepository> remoteArtifactRepositories = session.getCurrentProject().getRemoteArtifactRepositories();
for ( Artifact projectArtifact : session.getCurrentProject().getArtifacts() )
{
@ -943,21 +694,6 @@ public class DefaultPluginManager
plugin.setVersion( version );
}
public void checkRequiredMavenVersion( Plugin plugin, MavenProject pluginProject, ArtifactRepository localRepository, List<ArtifactRepository> remoteRepositories )
throws PluginVersionResolutionException, InvalidPluginException
{
// if we don't have the required Maven version, then ignore an update
if ( ( pluginProject.getPrerequisites() != null ) && ( pluginProject.getPrerequisites().getMaven() != null ) )
{
DefaultArtifactVersion requiredVersion = new DefaultArtifactVersion( pluginProject.getPrerequisites().getMaven() );
if ( runtimeInformation.getApplicationInformation().getVersion().compareTo( requiredVersion ) < 0 )
{
throw new PluginVersionResolutionException( plugin.getGroupId(), plugin.getArtifactId(), "Plugin requires Maven version " + requiredVersion );
}
}
}
public MojoDescriptor getMojoDescriptor( Plugin plugin, String goal, MavenProject project, ArtifactRepository localRepository )
throws PluginLoaderException
{
@ -973,10 +709,6 @@ public class DefaultPluginManager
return mojoDescriptor;
}
// ----------------------------------------------------------------------
// Validate plugin
// ----------------------------------------------------------------------
// ----------------------------------------------------------------------
// Component Discovery
// ----------------------------------------------------------------------

View File

@ -22,9 +22,6 @@ package org.apache.maven.plugin;
import org.apache.maven.plugin.descriptor.MojoDescriptor;
import org.codehaus.plexus.util.xml.Xpp3Dom;
import java.util.ArrayList;
import java.util.List;
/**
* Describes a single mojo invocation.
*

View File

@ -19,13 +19,13 @@ package org.apache.maven.plugin;
* under the License.
*/
import java.util.Iterator;
import java.util.List;
import org.apache.maven.plugin.descriptor.MojoDescriptor;
import org.apache.maven.plugin.descriptor.Parameter;
import org.codehaus.plexus.util.StringUtils;
import java.util.Iterator;
import java.util.List;
public class PluginParameterException
extends PluginConfigurationException
{

View File

@ -24,7 +24,6 @@ import java.util.Collection;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.Set;
@ -204,23 +203,7 @@ public class DefaultMavenProjectBuilder
return project;
}
// private static void setRepositoriesOn(MavenProject project, )
//!! This is used by the RR plugin
public MavenProject buildFromRepository( Artifact artifact, List<ArtifactRepository> remoteArtifactRepositories, ArtifactRepository localRepository, boolean allowStubs )
throws ProjectBuildingException
{
Artifact pomArtifact = artifact;
if ( !artifact.getType().equals( "pom" ) )
{
pomArtifact = repositorySystem.createProjectArtifact( artifact.getGroupId(), artifact.getArtifactId(), artifact.getVersion() );
}
return buildFromRepository( pomArtifact, remoteArtifactRepositories, localRepository );
}
public MavenProject buildFromRepository(Artifact artifact, ProjectBuilderConfiguration configuration )
throws ProjectBuildingException
{
@ -310,23 +293,7 @@ public class DefaultMavenProjectBuilder
hm.put( artifact.getId(), project );
return project;
}
//TODO: Get rid of this after merge of new PluginManager code
public MavenProject buildFromRepository( Artifact artifact, List<ArtifactRepository> remoteRepositories, ArtifactRepository localRepository )
throws ProjectBuildingException
{
if(remoteRepositories == null)
{
throw new IllegalArgumentException("repositories: null");
}
ProjectBuilderConfiguration configuration = new DefaultProjectBuilderConfiguration()
.setLocalRepository( localRepository )
.setRemoteRepositories(remoteRepositories);
return buildFromRepository(artifact, configuration);
}
}
/**
* This is used for pom-less execution like running archetype:generate.
@ -377,7 +344,8 @@ public class DefaultMavenProjectBuilder
Artifact pomArtifact = repositorySystem.createProjectArtifact( project.getGroupId(), project.getArtifactId(), project.getVersion() );
pomArtifact.setFile( pomFile );
ArtifactResolutionRequest request = new ArtifactResolutionRequest().setArtifact( pomArtifact ).setArtifactDependencies( project.getDependencyArtifacts() )
ArtifactResolutionRequest request = new ArtifactResolutionRequest()
.setArtifact( pomArtifact ).setArtifactDependencies( project.getDependencyArtifacts() )
.setLocalRepository( configuration.getLocalRepository() )
.setRemoteRepostories( project.getRemoteArtifactRepositories() )
.setManagedVersionMap( project.getManagedVersionMap() );
@ -420,12 +388,6 @@ public class DefaultMavenProjectBuilder
Properties props = new Properties( config.getExecutionProperties() );
//TODO: this magical property should not be placed in here in the middle of the project builder. move somewhere out to
// the front-end where they can all be collected.
if ( config.getBuildStartTime() != null )
{
props.put( "${build.timestamp}", new SimpleDateFormat( "yyyyMMdd-hhmm" ).format( config.getBuildStartTime() ) );
}
try
{
model = interpolator.interpolateModel( model, props, domainModel.getProjectDirectory() );

View File

@ -19,6 +19,11 @@ package org.apache.maven.project;
* under the License.
*/
import java.io.File;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.DefaultArtifact;
import org.apache.maven.artifact.InvalidArtifactRTException;
@ -32,11 +37,6 @@ import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.component.annotations.Requirement;
import org.codehaus.plexus.logging.AbstractLogEnabled;
import java.io.File;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
@Component(role = MavenProjectHelper.class)
public class DefaultMavenProjectHelper
extends AbstractLogEnabled

View File

@ -19,15 +19,12 @@ package org.apache.maven.project;
* under the License.
*/
import java.util.Date;
import java.util.HashSet;
import java.util.List;
import java.util.Properties;
import java.util.Set;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.model.ModelEventListener;
import org.apache.maven.model.Plugin;
import org.apache.maven.profiles.ProfileManager;
public class DefaultProjectBuilderConfiguration
@ -39,17 +36,23 @@ public class DefaultProjectBuilderConfiguration
private List<ArtifactRepository> remoteRepositories;
private Properties userProperties;
//!!jvz Find out who added this. It's wrong, the execution properties are what come from the embedder setup not system properties.
private Properties executionProperties = System.getProperties();
private Date buildStartTime;
private List<ModelEventListener> listeners;
private MavenProject topProject;
public DefaultProjectBuilderConfiguration()
{
}
public DefaultProjectBuilderConfiguration( ArtifactRepository localRepository, List<ArtifactRepository> remoteRepositories )
{
this.localRepository = localRepository;
this.remoteRepositories = remoteRepositories;
}
public MavenProject getTopLevelProjectFromReactor()
{
return topProject;
@ -104,17 +107,6 @@ public class DefaultProjectBuilderConfiguration
return this;
}
public Date getBuildStartTime()
{
return buildStartTime;
}
public ProjectBuilderConfiguration setBuildStartTime( Date buildStartTime )
{
this.buildStartTime = buildStartTime;
return this;
}
public List<ModelEventListener> getModelEventListeners()
{
return listeners;

View File

@ -19,12 +19,12 @@ package org.apache.maven.project;
* under the License.
*/
import java.io.File;
import org.apache.maven.artifact.InvalidRepositoryException;
import org.apache.maven.project.validation.ModelValidationResult;
import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
import java.io.File;
public class InvalidProjectModelException
extends ProjectBuildingException
{

View File

@ -19,10 +19,10 @@ package org.apache.maven.project;
* under the License.
*/
import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
import java.io.File;
import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
public class InvalidProjectVersionException
extends ProjectBuildingException
{

View File

@ -69,8 +69,8 @@ import org.apache.maven.model.io.xpp3.MavenXpp3Reader;
import org.apache.maven.model.io.xpp3.MavenXpp3Writer;
import org.apache.maven.project.artifact.ActiveProjectArtifact;
import org.apache.maven.project.artifact.InvalidDependencyVersionException;
import org.apache.maven.repository.RepositorySystem;
import org.apache.maven.repository.MavenRepositoryWrapper;
import org.apache.maven.repository.RepositorySystem;
import org.apache.maven.repository.VersionNotFoundException;
import org.codehaus.plexus.util.StringUtils;
import org.codehaus.plexus.util.xml.Xpp3Dom;
@ -363,6 +363,7 @@ public class MavenProject
}
catch ( ProjectBuildingException e )
{
//TODO: awful
e.printStackTrace();
}
}
@ -370,10 +371,11 @@ public class MavenProject
{
try
{
parent = mavenProjectBuilder.buildFromRepository( getParentArtifact(), this.remoteArtifactRepositories, projectBuilderConfiguration.getLocalRepository() );
parent = mavenProjectBuilder.buildFromRepository( getParentArtifact(), projectBuilderConfiguration );
}
catch ( ProjectBuildingException e )
{
// TODO: awful
e.printStackTrace();
}
}

View File

@ -16,7 +16,6 @@ package org.apache.maven.project;
*/
import java.io.File;
import java.util.List;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
@ -28,20 +27,13 @@ public interface MavenProjectBuilder
MavenProject build( File project, ArtifactRepository localRepository, ProfileManager profileManager )
throws ProjectBuildingException;
// remote resources plugin
MavenProject buildFromRepository( Artifact artifact, List<ArtifactRepository> remoteRepositories, ArtifactRepository localRepository, boolean allowStub )
throws ProjectBuildingException;
MavenProject build( File project, ProjectBuilderConfiguration configuration )
throws ProjectBuildingException;
MavenProjectBuildingResult buildProjectWithDependencies( File project, ProjectBuilderConfiguration configuration )
throws ProjectBuildingException;
MavenProject buildFromRepository( Artifact artifact, List<ArtifactRepository> remoteRepositories, ArtifactRepository localRepository )
throws ProjectBuildingException;
MavenProject buildFromRepository(Artifact artifact, ProjectBuilderConfiguration configuration )
MavenProject buildFromRepository( Artifact artifact, ProjectBuilderConfiguration configuration )
throws ProjectBuildingException;
MavenProject buildStandaloneSuperProject( ProjectBuilderConfiguration configuration )

View File

@ -1,13 +1,10 @@
package org.apache.maven.project;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.model.Plugin;
import org.apache.maven.profiles.ProfileManager;
import java.util.Date;
import java.util.List;
import java.util.Properties;
import java.util.Set;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.profiles.ProfileManager;
public interface ProjectBuilderConfiguration
{
@ -26,11 +23,6 @@ public interface ProjectBuilderConfiguration
ProjectBuilderConfiguration setRemoteRepositories( List<ArtifactRepository> remoteRepositories );
ProjectBuilderConfiguration setExecutionProperties( Properties executionProperties );
//TODO: these do not belong here, we can profile things else where
Date getBuildStartTime();
ProjectBuilderConfiguration setBuildStartTime( Date buildStartTime );
MavenProject getTopLevelProjectFromReactor();

View File

@ -1,5 +1,8 @@
package org.apache.maven.project;
import java.io.File;
import java.io.IOException;
import org.apache.maven.artifact.InvalidRepositoryException;
import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
import org.apache.maven.artifact.resolver.ArtifactResolutionException;
@ -8,9 +11,6 @@ import org.apache.maven.profiles.ProfileActivationException;
import org.apache.maven.project.artifact.InvalidDependencyVersionException;
import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
import java.io.File;
import java.io.IOException;
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file

View File

@ -19,6 +19,10 @@ package org.apache.maven.project.artifact;
* under the License.
*/
import java.io.File;
import java.util.Collection;
import java.util.List;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.handler.ArtifactHandler;
import org.apache.maven.artifact.metadata.ArtifactMetadata;
@ -29,10 +33,6 @@ import org.apache.maven.artifact.versioning.OverConstrainedVersionException;
import org.apache.maven.artifact.versioning.VersionRange;
import org.apache.maven.project.MavenProject;
import java.io.File;
import java.util.Collection;
import java.util.List;
/**
* Wraps an active project instance to be able to receive updates from its artifact without affecting the original
* attributes of this artifact.

View File

@ -1,12 +1,12 @@
package org.apache.maven.project.artifact;
import java.io.File;
import org.apache.maven.artifact.ArtifactUtils;
import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
import org.apache.maven.model.Dependency;
import org.apache.maven.project.InvalidProjectVersionException;
import java.io.File;
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file

View File

@ -43,6 +43,7 @@ import org.apache.maven.artifact.versioning.VersionRange;
import org.apache.maven.model.Dependency;
import org.apache.maven.model.DistributionManagement;
import org.apache.maven.model.Relocation;
import org.apache.maven.project.DefaultProjectBuilderConfiguration;
import org.apache.maven.project.InvalidProjectModelException;
import org.apache.maven.project.MavenProject;
import org.apache.maven.project.MavenProjectBuilder;
@ -182,7 +183,7 @@ public class MavenMetadataSource
{
try
{
project = mavenProjectBuilder.buildFromRepository( pomArtifact, remoteRepositories, localRepository );
project = mavenProjectBuilder.buildFromRepository( pomArtifact, new DefaultProjectBuilderConfiguration( localRepository, remoteRepositories ) );
}
catch ( InvalidProjectModelException e )
{

View File

@ -19,6 +19,9 @@ package org.apache.maven.project.artifact;
* under the License.
*/
import java.io.File;
import java.io.IOException;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.metadata.AbstractArtifactMetadata;
import org.apache.maven.artifact.metadata.ArtifactMetadata;
@ -26,9 +29,6 @@ import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.repository.metadata.RepositoryMetadataStoreException;
import org.codehaus.plexus.util.FileUtils;
import java.io.File;
import java.io.IOException;
/**
* Attach a POM to an artifact.
*

View File

@ -19,6 +19,10 @@ package org.apache.maven.project.validation;
* under the License.
*/
import java.io.File;
import java.util.Iterator;
import java.util.List;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.model.Build;
import org.apache.maven.model.Dependency;
@ -33,10 +37,6 @@ import org.apache.maven.model.Resource;
import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.util.StringUtils;
import java.io.File;
import java.util.Iterator;
import java.util.List;
/**
* @author <a href="mailto:trygvis@inamo.no">Trygve Laugst&oslash;l</a>
* @version $Id$

View File

@ -19,11 +19,11 @@ package org.apache.maven.reactor;
* under the License.
*/
import org.apache.maven.project.ProjectBuildingException;
import java.io.File;
import java.io.IOException;
import org.apache.maven.project.ProjectBuildingException;
/**
* @author Jason van Zyl
* @version $Id$

View File

@ -19,11 +19,11 @@ package org.apache.maven.settings;
* under the License.
*/
import java.io.IOException;
import org.apache.maven.execution.MavenExecutionRequest;
import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
import java.io.IOException;
/**
* @author jdcasey
* @author Jason van Zyl

View File

@ -19,15 +19,15 @@ package org.apache.maven.settings;
* under the License.
*/
import org.apache.maven.model.ActivationFile;
import org.codehaus.plexus.util.StringUtils;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import org.apache.maven.model.ActivationFile;
import org.codehaus.plexus.util.StringUtils;
/**
* Several convenience methods to handle settings
*

View File

@ -19,14 +19,14 @@ package org.apache.maven.settings.validation;
* under the License.
*/
import java.util.Iterator;
import java.util.List;
import org.apache.maven.settings.Profile;
import org.apache.maven.settings.Repository;
import org.apache.maven.settings.Settings;
import org.codehaus.plexus.component.annotations.Component;
import java.util.Iterator;
import java.util.List;
/**
* @author Milos Kleint
*/

View File

@ -9,7 +9,6 @@ import org.apache.maven.execution.DefaultMavenExecutionRequest;
import org.apache.maven.execution.MavenExecutionRequest;
import org.apache.maven.execution.MavenSession;
import org.apache.maven.model.Model;
import org.apache.maven.plugin.DefaultPluginManager;
import org.apache.maven.plugin.PluginManager;
import org.apache.maven.project.DefaultProjectBuilderConfiguration;
import org.apache.maven.project.MavenProject;
@ -19,8 +18,6 @@ import org.apache.maven.repository.RepositorySystem;
import org.codehaus.plexus.ContainerConfiguration;
import org.codehaus.plexus.PlexusTestCase;
import org.codehaus.plexus.component.annotations.Requirement;
import org.codehaus.plexus.component.discovery.ComponentDiscoverer;
import org.codehaus.plexus.component.discovery.ComponentDiscoveryListener;
import org.codehaus.plexus.util.FileUtils;
public abstract class AbstractCoreMavenComponentTestCase

View File

@ -3,15 +3,12 @@ package org.apache.maven.lifecycle;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import org.apache.maven.AbstractCoreMavenComponentTestCase;
import org.apache.maven.execution.MavenSession;
import org.apache.maven.model.Plugin;
import org.apache.maven.plugin.MojoExecution;
import org.apache.maven.plugin.PluginManager;
import org.apache.maven.plugin.descriptor.MojoDescriptor;
import org.apache.maven.plugin.descriptor.PluginDescriptor;
import org.codehaus.plexus.component.annotations.Requirement;
import org.codehaus.plexus.util.xml.Xpp3Dom;

View File

@ -8,11 +8,8 @@ import org.apache.maven.execution.DuplicateProjectException;
import org.apache.maven.execution.MavenExecutionRequest;
import org.apache.maven.execution.MavenSession;
import org.apache.maven.execution.ReactorManager;
import org.apache.maven.model.Build;
import org.apache.maven.model.Extension;
import org.apache.maven.model.Model;
import org.apache.maven.project.MavenProject;
import org.apache.maven.wagon.Wagon;
import org.codehaus.plexus.PlexusTestCase;
import org.codehaus.plexus.util.dag.CycleDetectedException;

View File

@ -19,6 +19,9 @@ package org.apache.maven.profiles.manager;
* under the License.
*/
import java.util.List;
import java.util.Properties;
import org.apache.maven.model.Activation;
import org.apache.maven.model.ActivationProperty;
import org.apache.maven.model.Profile;
@ -27,9 +30,6 @@ import org.apache.maven.profiles.ProfileActivationContext;
import org.apache.maven.profiles.ProfileManager;
import org.codehaus.plexus.PlexusTestCase;
import java.util.List;
import java.util.Properties;
public class DefaultProfileManagerTest
extends PlexusTestCase
{

View File

@ -2,11 +2,11 @@ package org.apache.maven.profiles.matchers;
import java.util.Properties;
import junit.framework.TestCase;
import org.apache.maven.model.Activation;
import org.apache.maven.model.Profile;
import junit.framework.TestCase;
public class JdkMatcherTest extends TestCase
{
public void testJdkMatch()

View File

@ -15,14 +15,6 @@ package org.apache.maven.project;
* the License.
*/
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.repository.DefaultArtifactRepository;
import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
import org.apache.maven.profiles.DefaultProfileManager;
import org.apache.maven.profiles.ProfileActivationContext;
import org.apache.maven.project.validation.ModelValidationResult;
import org.codehaus.plexus.PlexusTestCase;
import java.io.File;
import java.io.FileNotFoundException;
import java.net.URI;
@ -31,6 +23,14 @@ import java.net.URL;
import java.util.Arrays;
import java.util.Properties;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.repository.DefaultArtifactRepository;
import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
import org.apache.maven.profiles.DefaultProfileManager;
import org.apache.maven.profiles.ProfileActivationContext;
import org.apache.maven.project.validation.ModelValidationResult;
import org.codehaus.plexus.PlexusTestCase;
/**
* @author Jason van Zyl
* @version $Id$

View File

@ -19,23 +19,17 @@ package org.apache.maven.project;
* under the License.
*/
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.repository.DefaultArtifactRepository;
import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
import org.apache.maven.model.Build;
import org.apache.maven.model.Plugin;
import org.apache.maven.model.Resource;
import org.apache.maven.model.io.xpp3.MavenXpp3Writer;
import org.codehaus.plexus.util.FileUtils;
import org.codehaus.plexus.util.WriterFactory;
import java.io.File;
import java.io.ByteArrayOutputStream;
import java.io.Writer;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.repository.DefaultArtifactRepository;
import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
import org.apache.maven.model.Plugin;
import org.codehaus.plexus.util.FileUtils;
public class DefaultMavenProjectBuilderTest
extends AbstractMavenProjectTestCase
{

View File

@ -19,15 +19,6 @@ package org.apache.maven.project;
* under the License.
*/
import org.apache.maven.model.Build;
import org.apache.maven.model.Dependency;
import org.apache.maven.model.Plugin;
import org.apache.maven.model.PluginContainer;
import org.apache.maven.model.PluginExecution;
import org.codehaus.plexus.util.xml.Xpp3Dom;
import org.codehaus.plexus.util.xml.Xpp3DomBuilder;
import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
import java.io.IOException;
import java.io.StringReader;
import java.util.Arrays;
@ -38,6 +29,15 @@ import java.util.Map;
import junit.framework.TestCase;
import org.apache.maven.model.Build;
import org.apache.maven.model.Dependency;
import org.apache.maven.model.Plugin;
import org.apache.maven.model.PluginContainer;
import org.apache.maven.model.PluginExecution;
import org.codehaus.plexus.util.xml.Xpp3Dom;
import org.codehaus.plexus.util.xml.Xpp3DomBuilder;
import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
public class ModelUtilsTest
extends TestCase
{

View File

@ -6,7 +6,6 @@ import java.util.List;
import java.util.Set;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.InvalidRepositoryException;
import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
import org.apache.maven.artifact.metadata.ResolutionGroup;
import org.apache.maven.artifact.repository.ArtifactRepository;

View File

@ -19,6 +19,12 @@ package org.apache.maven.project.artifact;
* under the License.
*/
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.ArtifactUtils;
import org.apache.maven.artifact.factory.ArtifactFactory;
@ -32,12 +38,6 @@ import org.apache.maven.project.MavenProject;
import org.apache.maven.repository.RepositorySystem;
import org.codehaus.plexus.PlexusTestCase;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
public class MavenMetadataSourceTest
extends PlexusTestCase
{

View File

@ -19,6 +19,11 @@ package org.apache.maven.project.artifact;
* under the License.
*/
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.TreeMap;
import org.apache.maven.model.Build;
import org.apache.maven.model.Dependency;
import org.apache.maven.model.DependencyManagement;
@ -27,11 +32,6 @@ import org.apache.maven.model.Plugin;
import org.apache.maven.model.PluginManagement;
import org.apache.maven.project.ModelUtils;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.TreeMap;
/**
* @author jdcasey Created on Feb 1, 2005
*/

View File

@ -19,16 +19,16 @@ package org.apache.maven.project.canonical;
* under the License.
*/
import java.io.File;
import java.util.Iterator;
import java.util.List;
import org.apache.maven.model.Plugin;
import org.apache.maven.model.PluginExecution;
import org.apache.maven.project.AbstractMavenProjectTestCase;
import org.apache.maven.project.MavenProject;
import org.codehaus.plexus.util.xml.Xpp3Dom;
import java.io.File;
import java.util.Iterator;
import java.util.List;
/**
* @author Jason van Zyl
* @version $Id$

Some files were not shown because too many files have changed in this diff Show More