Note: I'm not sure wheter my tmpDir approach is the best.
It's certain to work all the time (depending on FileUtils.createTempFile),
but it may leave a lot of 'garbage' in target/.
o Updated maven-core's assembly descriptor to make use
of new line endings functionality.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@267344 13f79535-47bb-0310-9956-ffa450edef68
make repository metadata behave more like snapshots with daily updates.
next step is to move the version checking to use that instead and fallback to the old files
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@266298 13f79535-47bb-0310-9956-ffa450edef68
issues.
o Modified model: added a 'BaseSet' type as a basetype
for DependencySet and FileSet; it contains fileMode and
directoryMode to work with the new plexus-archiver.
o Bumped plexus-archiver version to 1.0-alpha-2-SNAPSHOT.
o Added support for actually using fileMode and directoryMode.
(tested this with a modified maven-core assembly descriptor,
not committed as a test though).
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@264888 13f79535-47bb-0310-9956-ffa450edef68
o Added testcase to check generation of eclipse files in
different location; modified the testcase to support this,
and deal with the absolute paths.
o Neatified the addSourceLinks/addResourceLinks: using
a map to keep track of duplicate source folders has the side
effect of only needing one of those methods; it should
also be faster :)
o Tried to add support for includes/excludes, but eclipse only
supports unique source directories; this is typically not the
case in maven, filters are used to split one resourcedir
up. Left the code in for future reference.
TODO: find a way to merge includes/excludes. If only
the dir where in/excludes are specified is unique, they
could be written without problem. This requires a preprocessing
pass.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@240143 13f79535-47bb-0310-9956-ffa450edef68
- removing usage of this. as a prefix for referencing local variables
- renaming public_, private_ and protected_ to showPublic, etc.
- removing usage of final.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@239601 13f79535-47bb-0310-9956-ffa450edef68
and did some more code cleanup.
o Tracking with projects have been referenced in order to stop adding the same
project twice if there's a dep on more than one artifact attachment from a
project.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@239392 13f79535-47bb-0310-9956-ffa450edef68
o Added includes/excludes for compile and testCompile
o added integration tests for single execution of compile and testCompile with excludes
o Added integration test for multiple execution of compile in different phases per Dan Tran's request
The bulk of this commit is KrisBravo's work (I think that's who Corridor Software Developer is??). Thanks for the help.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@239272 13f79535-47bb-0310-9956-ffa450edef68
o Artifact attachment via MavenProjectHelper was using string literals of the variables I was trying to use to fill in type and classifier (dumb, I know!)
o Source plugin didn't have an @phase for the JarSourceMojo...added, then added the goal configuration in the release profile in the super-pom
o Removed the source plugin bindings for the lifecycle mappings in maven-core
o Re-added [deprecated] method MavenProjectBuilder.build( File, ArtifactRepository, List )...you should use MavenProjectBuilder.build( File, ArtifactRepository, ProfileManager ) instead.
o Added profile handling/injection for the super-pom in two places: in buildStandaloneSuperPom() and in private build(..). This enables injection of the release profile which is provided in the super-pom.
o Added integration test to verify that using -DperformRelease=true results in the sources being attached...to override this behavior, another profile keyed on -DperformRelease could turn the 'attach' param for the source plugin off.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@233245 13f79535-47bb-0310-9956-ffa450edef68
o Added @requiresDirectInvocation (was: @cliOnly, but this implies m2 is run from CLI...counter-intuitive for embedding)
o Added handling for new @requiresDirectInvocation (generation/parsing, MojoDescriptor support, etc.)
o Added check in DefaultLifecycleExecutor to throw a LifecycleExecutionException if a mojo specified in a lifecycle binding is marked as direct-invocation only.
o Added MavenProjectHelper/DefaultMavenProjectHelper to provide convenience methods for manipulating MavenProject instances (for example, attaching artifacts or adding resources)
o Removed maven-artifact dependency from maven-source-plugin, and added dependency on maven-plugin-api (should've been there)
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@233021 13f79535-47bb-0310-9956-ffa450edef68
Fixing profile application to separate profiles discovered in and around POM from those in settings.xml, and apply them separately in the order:
for-each-project-in-inheritance:{POM, profiles.xml}, settings.xml
Added common interface for accumulating, explicitly activating and deactivating, and retrieving profiles to be applied to a given project. This manager interface (ProfileManager) is general enough to be applicable to both the project-level and settings-level profiles.
Added 'performRelease'-keyed profile to super-POM which will be used by the release plugin and anyone using a parallel process, and which will enable '-DupdateReleaseInfo=true' for the deploy mojo, along with enabling the source attachment for the project.
Added 'attach' parameter to JarSourceMojo to allow local POM to turn off source attachments, overriding release profile in super-pom.
Updated the release:perform mojo to use '-DperformRelease=true' for switching on the new release profile, rather than just using '-DupdateReleaseInfo=true'...
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@233013 13f79535-47bb-0310-9956-ffa450edef68
ear"
Committing on behalf of Stephane Nicoll.
Provides two new flags to customize ear modules:
* excluded ; if set the module is not bundle in the EAR file
* library ; if set the java module is considered as a 3rd party library and no
entry is generated in the application.xml
The patch also update the documentation.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@232833 13f79535-47bb-0310-9956-ffa450edef68
Enjoy! :-)
TODO:
o make <echo>...</echo> output visible.
o devise a way to pass on maven2 properties to <ant/>-called build.xml files.
The ant code just copies all properties from the default PropertyHandler,
however with m2 that's not possible since they are resolved/evaluated at
runtime.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@231230 13f79535-47bb-0310-9956-ffa450edef68
o Modified the PluginMappingDeployMojo in maven-plugin-plugin to always deploy the plugins.xml regardless. This may be a bit heavy, but it avoids the snag with the plugins.xml being detected in the local repository after the install phase runs...plugin mappings weren't making it to the repository during deploy.
o Added a new series of IT: it2xxx which will be tests that require more than a single maven invocation, and will be run via shell script, at least for now. This one builds and deploys a plugin, then attempts to use the plugin by referencing the prefix mapping in the (non-central) remote repository.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@231058 13f79535-47bb-0310-9956-ffa450edef68
Use MavenProject.addResource(..) and .addTestResource(..) to perform this function. I've built a BuildOverlay to insulate the interpolated, initialized Model's Build instance from runtime changes to these, in a similar fashion to addCompileSourceRoots(..), because I wanted to preserve some compat with plugins using ${project.build.resources}.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@230920 13f79535-47bb-0310-9956-ffa450edef68
o Added a check in MavenProject.getArtifacts() to never return null,
but an empty Set, since there's almost no checking.
o Added requiresDependencyResolution test to SurefirePlugin.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@230827 13f79535-47bb-0310-9956-ffa450edef68
- Show deprecation
- Show warnings
o Using the setters on the configuration object instead of passing them in
their raw format (eg -target 1.1).
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@230547 13f79535-47bb-0310-9956-ffa450edef68
the compiler plugin with <compilerId>, both "javac" and "eclipse" will work.
The default value is still "javac" so this shouldn't break anything.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@227494 13f79535-47bb-0310-9956-ffa450edef68
o Cleaned up resume functionality, and checkpointing for the release:prepare mojo.
TODO:
- Add testing of some sort
- Verify that maven-scm's checkin function is recursive (suspect it's not)
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@227150 13f79535-47bb-0310-9956-ffa450edef68
o Moved release.properties management to a helper class
o Created a helper class for caching/prompting for project-versions
o Created a helper class for managing SCM info updates during the release:prepare process
o Moved as many of the shared fields out of AbstractReleaseMojo as possible, given the refactor to reactorized processing
o Refactored the PrepareReleaseMojo to process a list of projects, and resolve inter-dependencies during transforms, etc.
o Refactored the PerformReleaseMojo to adjust to the new helper classes.
o Removed the old transformers, since MavenProject.writeOriginalModel() can be used instead, using the modello writer
o Bumped the maven-scm versions up to 1.0-alpha-2-SNAPSHOT, and added maven-scm-manager-plexus.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@227148 13f79535-47bb-0310-9956-ffa450edef68
under dependencyManagement of m2 and maven-plugins, and removed
versions in all poms having either as a parent.
Used version 1.0.2-SNAPSHOT for plexus-utils as that was used in maven-core
and is not overridable.
o Bumped maven-archiver version to 2.0-beta-1-SNAPSHOT for maven-ear-plugin
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@227084 13f79535-47bb-0310-9956-ffa450edef68
can calculate the build order - no more rebuilds needed to fix this!
o Added a switch -Declipse.workpace=/path/to/workspace that allows for the
.classpath and .project files to be written to a new directory:
- For each project a new directory is created.
- Eclipse 'Links' are created to the original project location for the
sources and resources directories.
- The target directory will be in the new workspace location, not in
the original project tree.
This offers the following advantages:
- Project trees that normally couldn't be imported into eclipse
because of the overlap error now can be imported succesfully
(m2 works now!)
- Projects that reside on a ClearCase SMB mounted drive (which are
very slow) can now have a target directory on a local drive without
modifying the pom, greatly improving build speed in eclipse.
o Fixed some minor bugs where the wrong project instance was used.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@226669 13f79535-47bb-0310-9956-ffa450edef68
- fix detection of files to correct two bugs: site.xml was incorrectly detected as a dupe of site.apt and identical filenames in different paths were incorrectly marked as dupes
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@226507 13f79535-47bb-0310-9956-ffa450edef68
o Adding cli-options.txt for three ITs that failed when I cleaned out the local repo
o Fixing the setFile(..) method of ActiveProjectArtifact (hopefully) for Emmanuel's continuum build problem...
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@226426 13f79535-47bb-0310-9956-ffa450edef68