Commit Graph

121 Commits

Author SHA1 Message Date
John Dennis Casey 69fda56d91 Adding '$' as an escape character for variable-syntax which should be passed through.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@328885 13f79535-47bb-0310-9956-ffa450edef68
2005-10-27 14:47:55 +00:00
Brett Leslie Porter 56f566e79e clean some imports and unused code
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@327885 13f79535-47bb-0310-9956-ffa450edef68
2005-10-23 23:50:38 +00:00
Brett Leslie Porter 772bf37124 PR: MNG-1223
error out if there are duplicate modules in the reactor


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@327763 13f79535-47bb-0310-9956-ffa450edef68
2005-10-23 08:07:38 +00:00
Brett Leslie Porter 7134d66a5c PR: MNG-914
fix test

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@307301 13f79535-47bb-0310-9956-ffa450edef68
2005-10-08 15:07:00 +00:00
Jason van Zyl 38269cca84 o A change that eliminates the use of System.properties from the core in an
attempt to move toward true embeddability. 

 - System properties are still populated in the CLI to make sure that the 
   system property profile activator functions and the settings are dealt with
   correctly. I will look at each of those shortly but this is a first step.
   


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@293504 13f79535-47bb-0310-9956-ffa450edef68
2005-10-04 03:31:35 +00:00
John Dennis Casey 63b3f71f6d Fixing error messages related to invalid plugin configuration, similar to the instantiation exception for ArtifactRepository when there is no deployment repository...
o Moved the parameter documentation reader to a separate project, so that I can use Modello.
o Added some more parameter documentation.



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@293410 13f79535-47bb-0310-9956-ffa450edef68
2005-10-03 18:06:00 +00:00
John Dennis Casey 0b4d79d101 Resolving: MNG-1032, MNG-1033
o Improved the error diagnostics related to artifact resolution errors.

o Added xml-based documentation of supported plugin parameter expressions, including info about how to affect them ('-o' for example), how to specify them (<distributionManagement><repository/> for example in ${project.distributionManagementArtifactRepository}), and what the expressions are actually used for. This can also serve as a basis for creating documentation for plugin parameter expressions on the website.

o Improved the error diagnostics for plugin configuration errors.

o Added a couple of ITs in the 1000 series to test these two error conditions.



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@292750 13f79535-47bb-0310-9956-ffa450edef68
2005-09-30 14:33:10 +00:00
John Dennis Casey da33bafe84 Resolving: MNG-885
o Extracting basedir from the project instance when PluginParameterExpressionEvaluator is init'ed if project != null...otherwise, using ${user.dir} from sysprops.

o Extracting values for resolution from POM properties before POM instance during POM interpolation, and adding checks to guard against self-reference of POM elements.

o Added three ITs (one contra) to test these resolutions.



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@291735 13f79535-47bb-0310-9956-ffa450edef68
2005-09-26 20:29:20 +00:00
Brett Leslie Porter d32678b6ee PR: MNG-870
correct method name

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@290891 13f79535-47bb-0310-9956-ffa450edef68
2005-09-22 04:50:08 +00:00
Brett Leslie Porter 8858d8f85c PR: MNG-629
preparing for executing the lifecycle by passing reports into the site plugin, rather than extracting them from the plugin manager

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@290634 13f79535-47bb-0310-9956-ffa450edef68
2005-09-21 06:45:50 +00:00
John Dennis Casey 0b4aa2dc41 Resolving: MNG-715
PluginParameterExpressionEvaluator now has two static final Maps - BANNED_EXPRESSIONS and DEPRECATED_EXPRESSIONS, each of which contain mappings of restricted expressions to the preferred alternative.



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@232200 13f79535-47bb-0310-9956-ffa450edef68
2005-08-12 04:03:33 +00:00
John Dennis Casey b69490b828 Resolving: MNG-95
o Added --fail-fast --fail-at-end --fail-never CLI options, with appropriate summary and exclusion of dependent projects from the build when --fail-at-end is specified. Also, implemented it0046 and it1011 to test it.



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@227490 13f79535-47bb-0310-9956-ffa450edef68
2005-08-04 21:14:51 +00:00
Kenney Westerhof e300b10792 Removed unused imports and added package declarations to maven-plugin-tools-java
test resources (to stop eclipse from complaining).


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@226699 13f79535-47bb-0310-9956-ffa450edef68
2005-07-31 22:12:34 +00:00
John Dennis Casey 701ef520a3 Working on MNG-607
o Changed MavenMetadataSource to a component, to avoid having to lookup artifactFactory and projectBuilder in order to 
  construct it.

o Added add(..) method to ScmBean in the release plugin to allow addition of release-pom.xml

o Changed the PrepareReleaseMojo to resolve ONLY version and parent-version for the normal pom.xml, and fully resolve all
  artifacts used in the release-pom.xml, including version, parent-version, dependency closure (given by project.getArtifacts()), plugins, and reports. It will then add the release-pom.xml, and (attempt to) delete it before performing the final commit for next development version.

o Added some mapping methods to ArtifactUtils, to key by artifact.getId, and to create an Artifact.getId()-compatible string from parameters.

o Added TestProjectBuilder to remove the requirement in ProjectClasspathTest to modify the fields of the project builder directly.

o Cleaned up the AbstractReleaseMojo and PrepareReleaseMojo to avoid container lookups...they're now mojo parameters with the 'component.' prefix.

NOTE: Next step is to figure out how to use maven-scm to remove an SCM resource, to enable the prepare mojo to take the release-pom.xml back out of HEAD after the tag is complete.



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@224413 13f79535-47bb-0310-9956-ffa450edef68
2005-07-22 22:07:28 +00:00
Brett Leslie Porter 511af3d3e2 PR: MNG-596
add XSD definition to m2 poms and archetypes



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@220079 13f79535-47bb-0310-9956-ffa450edef68
2005-07-21 13:58:42 +00:00
Brett Leslie Porter 810d4a3276 PR: MNG-505
artifact refactoring to facilitate version ranges



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@219616 13f79535-47bb-0310-9956-ffa450edef68
2005-07-19 05:04:39 +00:00
Brett Leslie Porter 26d36d8959 PR: MNG-140
split artifact impl from api so that dep resolution can be used independently of wagon
only the first step in making maven-artifact more useful as a public api - more changes to be made


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@191634 13f79535-47bb-0310-9956-ffa450edef68
2005-06-21 06:49:49 +00:00
Brett Leslie Porter 81fe76fd27 PR: MNG-471, MNG-489
- refactor project out of MavenSession so that it can be cloned
- refactor lifecycle construction out so we can clone the existing one and pass it into a new execution
- only resolve plugins that are executed (MNG-489)



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@191413 13f79535-47bb-0310-9956-ffa450edef68
2005-06-20 07:17:32 +00:00
Brett Leslie Porter a9f174c834 Clean up of the lifecycle executor, simplify configuration and push back into the plugin manager.
This fixed a couple of bugs along the way.

One change that this has brought to bear from the document is you now must specify a goal for it to be bound to the LC
(see it0008)


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@191285 13f79535-47bb-0310-9956-ffa450edef68
2005-06-18 13:01:26 +00:00
Brett Leslie Porter 01e6c8daa6 PR: MNG-257
refactor artifact creation to all go through the factory, and assign the type handler from there.
Attach EJB client to the EJB artifact so that it is installed/deployed along with it.



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@191096 13f79535-47bb-0310-9956-ffa450edef68
2005-06-17 06:49:57 +00:00
John Dennis Casey a3cf96219f Resolving issue: MNG-379
o Added support for update-all and update-none when prompting the user.

o Added --update-plugins/-F option to force an update of the plugins used in the project.

o Added autoUpdate setting for the plugin registry. This is used when in non-interactive mode, to determine whether to register plugin updates

o Added updateInterval to determine when/how often to check for updates to registered plugins. Supports three syntaxes:

  - 'never'
  - 'always'
  - 'interval:XXX' (where XXX can be a combination of weeks, days, hours, and minutes in the syntax: 1w1d1h1m)
         > this renders the interval syntax similar to 'interval:1w' to check every week.

  NOTE: update intervals are calculated from the time a particular plugin was last checked.

o Added lastChecked attribute for registered plugins, to use as a basis for calculating update-check interval

o Added RuntimeInfo classes for maven-settings and maven-plugin-registry, to help in tracking the file each instance comes from, in addition to merging info which is useful when extracting the user-level instance from the merged instance (for persisting changes to the user instance, f.e.).

o Changed verifyPlugin(..) to take an instance of Settings, to allow persistent decisions across the session (like update-all, update-none in the plugin version manager)

This should take care of outstanding issues with this new feature. I'm closing the JIRA issue now, and we'll deal with any bugs/shortcomings as separate issues.



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@191021 13f79535-47bb-0310-9956-ffa450edef68
2005-06-16 22:38:57 +00:00
Brett Leslie Porter 49ea8e4001 tweak the available phases
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@190870 13f79535-47bb-0310-9956-ffa450edef68
2005-06-16 05:24:43 +00:00
John Dennis Casey a55fd04696 o Adding ${plugin.*} expression support for mojos. Specifically, added support for ${plugin.artifacts} to retrieve the plugin's classpath artifacts. NOTE: There may be artifacts which are FILTERED by the resolution process, since they are provided in the maven distro. NOT SURE HOW BEST TO RESOLVE THAT...but it'll cause problems with people forking certain mojos, undoubtedly.
May resolve: MNG-455



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@190413 13f79535-47bb-0310-9956-ffa450edef68
2005-06-13 14:49:49 +00:00
Brett Leslie Porter 2a8ed2f339 PR: MNG-154
Define the lifecycle according to packaging.
Some more work on the structure of this is required.



git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@189871 13f79535-47bb-0310-9956-ffa450edef68
2005-06-10 00:57:19 +00:00
John Dennis Casey a96a03d0a0 o Removed dependency on plexus-container-artifact, using nested DefaultPlexusContainer instances instead for plugin isolation.
o Moved marmalade support dependencies out of maven-core, since they can be supported on demand now
o changed the ordering of the ant and assembly plugins, to show that the classloader (plugin param) bug is fixed.
o added a method in PluginDescriptor which is similar to o.a.m.model.Plugin.getId() (I think that's the method; it's the one that results in a key of 'g:a')
o moved wagon-ssh dependency into maven-core, since there is a new issue related to nested containers and wagons which are introduced as plugin dependencies. This should be solved using a mechanism similar to plugin-manager for wagon-manager impl in future anyway

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@187639 13f79535-47bb-0310-9956-ffa450edef68
2005-06-07 00:37:01 +00:00
John Dennis Casey 215c30bbb3 Moved the packages org.apache.maven.model.settings and org.apache.maven.model.profiles to org.apache.maven.settings and org.apache.maven.profiles, respectively.
This is restoring the settings to their original package structure, and putting profiles next to it...the change I'm reversing was not a good one, conceptually.

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@179289 13f79535-47bb-0310-9956-ffa450edef68
2005-05-31 21:48:55 +00:00
John Dennis Casey 25fb7c646d improved the error diagnosis for invalid plugin parameters, as in MNG-345
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@179274 13f79535-47bb-0310-9956-ffa450edef68
2005-05-31 21:01:25 +00:00
John Dennis Casey 23f82d0199 o Added runtime exception to construction of DefaultArtifact, when one or more of the four attributes required for object identity are null
o Created corresponding runtime exception: InvalidArtifactRTException
o Added error diagnoser for InvalidArtifactRTException
o Changed logError() in DefaultMaven to use error diagnosers (even the devs could use a hand!)
o Added unit test for InvalidArtifactDiagnoser.

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@179265 13f79535-47bb-0310-9956-ffa450edef68
2005-05-31 19:31:58 +00:00
John Dennis Casey 9d7e54c042 o Added model and builder support for Profiles specified in settings.xml, profiles.xml, and the POM.
o Changed MBoot and Verifier accordingly.

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@179233 13f79535-47bb-0310-9956-ffa450edef68
2005-05-31 16:24:34 +00:00
Brett Leslie Porter b10ed41fca reformat, apply license
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@169548 13f79535-47bb-0310-9956-ffa450edef68
2005-05-11 01:04:50 +00:00
Brett Leslie Porter d47f6c7dd6 move the Log interface to o.a.m.plugin.logging in maven-plugin-api, breaking the dependency on maven-monitor
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@169431 13f79535-47bb-0310-9956-ffa450edef68
2005-05-10 07:39:33 +00:00
John Dennis Casey 7eda955b1d o Cleaned up a couple of things in repoclean that broke with the last update.
o Added concept of ErrorDiagnoser to help interpret errors and provide user feedback
o Added PluginParameterException to provide richer information than simply PluginConfigurationException (it's derived from PluginConfigurationException)
o Added implementations of ErrorDiagnoser for artifact resolution and plugin configuration handling.
o Modified DefaultMaven's logFailure(..) method to use errorDiagnosers Map (injected via Plexus)

I approached the plugin parameter expression/name feedback in this way, as it seems like a general pattern for interpreting errors without embedding this logic deep within the app itself. Feel free to rollback if this causes issues.

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@169379 13f79535-47bb-0310-9956-ffa450edef68
2005-05-09 23:30:01 +00:00
John Dennis Casey 5345ee5fc6 Removed backward compat for plugin class-level parameter annotations and '#' expressions.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@168070 13f79535-47bb-0310-9956-ffa450edef68
2005-05-04 04:20:36 +00:00
Brett Leslie Porter 95a1895b16 add integration test phase
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@165598 13f79535-47bb-0310-9956-ffa450edef68
2005-05-02 07:22:47 +00:00
Brett Leslie Porter 8d4ca04b2d fix bad expression handling
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@165597 13f79535-47bb-0310-9956-ffa450edef68
2005-05-02 07:22:18 +00:00
John Dennis Casey 3966104e9c Removed the need for MavenMojoDescriptor (collapsed to just MojoDescriptor)...also partially setup the possibility for container-injected configurations, provided we enhance as described in getting-to-container-configured-mojos.apt.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@165378 13f79535-47bb-0310-9956-ffa450edef68
2005-04-30 03:50:47 +00:00
Brett Leslie Porter e313416d63 separate maven-project code
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@164217 13f79535-47bb-0310-9956-ffa450edef68
2005-04-22 11:01:33 +00:00
Brett Leslie Porter 9774d3d1cb decouple project stuff from maven-core
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@164205 13f79535-47bb-0310-9956-ffa450edef68
2005-04-22 09:01:47 +00:00
Brett Leslie Porter 874a8c1245 add more use of ${} expressions, fix problem when } was not at end
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@164195 13f79535-47bb-0310-9956-ffa450edef68
2005-04-22 08:33:34 +00:00
Brett Leslie Porter 7d6b029c43 some clean up of components and artifact repository factory
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@164181 13f79535-47bb-0310-9956-ffa450edef68
2005-04-22 07:16:09 +00:00
Brett Leslie Porter c98b557ac8 move artifact factory to maven-artifact
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@164178 13f79535-47bb-0310-9956-ffa450edef68
2005-04-22 06:16:25 +00:00
Brett Leslie Porter 21d261f503 clean the artifact factory interface a little
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@164172 13f79535-47bb-0310-9956-ffa450edef68
2005-04-22 05:19:04 +00:00
Brett Leslie Porter aafbd6b61c remove dependency on settings from the project builder
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@164089 13f79535-47bb-0310-9956-ffa450edef68
2005-04-21 17:17:36 +00:00
Brett Leslie Porter bc738a21f4 move utils to plexus-utils
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@164078 13f79535-47bb-0310-9956-ffa450edef68
2005-04-21 16:16:25 +00:00
Brett Leslie Porter c1cea8cbb8 factor out project sorter, and use whole ID
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163982 13f79535-47bb-0310-9956-ffa450edef68
2005-04-20 16:48:11 +00:00
Brett Leslie Porter a75e7d2577 improved error handling and other clean up
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163979 13f79535-47bb-0310-9956-ffa450edef68
2005-04-20 16:41:36 +00:00
John Dennis Casey 61406495be o Refactored the MavenSettings code into the settings.mdo/Settings class.
o Added code to cache the active proxy and profile inside the Settings instance for quicker lookup.

o Added a method to initialize a new active profile for a Settings instance in the event one didn't exist.

o Started adding offline mode. So far, I've implemented:

  - Warning when a mojo declares a requirement for connectivity, but we're offline.

  - INFO message stating when maven is running in offline mode.

  - Addition to the Profile class in o.a.m.settings package to allow specification of offline mode by declaring: <offline>true</offline>


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163969 13f79535-47bb-0310-9956-ffa450edef68
2005-04-18 21:50:55 +00:00
Brett Leslie Porter e054a2fa5a resolve outstanding issues with scoping regarding tests. Algorithm to be documented in user's guide.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163953 13f79535-47bb-0310-9956-ffa450edef68
2005-04-15 07:31:40 +00:00
Brett Leslie Porter f4bf6c145d allow the expression evaluator to align strings to a base directory, for the purposes of the file converter
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163949 13f79535-47bb-0310-9956-ffa450edef68
2005-04-15 05:29:00 +00:00
Brett Leslie Porter b2e4433615 utilise the container for populating all mojo configuration, including expressions
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163947 13f79535-47bb-0310-9956-ffa450edef68
2005-04-15 04:52:31 +00:00