Commit Graph

30 Commits

Author SHA1 Message Date
John Dennis Casey 76c4ceda28 o Added duplicate check for mojo descriptor Parameters
o changed the exception(s) throws during mojo descriptor extraction to be derivatives of InvalidPluginDescriptorException
o changed PluginConfigurationException in plugin.descriptor to InvalidPluginDescriptorException
o changed all "true".equals(something) to Boolean.valueOf(something).booleanValue()
o added validation of 'modelVersion' back to [Default]ModelValidator
o Fixed/added tests for new 'modelVersion' validation
o changed all requiresXXX in MojoDescriptor to XXXRequired, and getRequiresXXX():boolean to isXXXRequired():boolean to help maintain bean-ness for future use




git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@168630 13f79535-47bb-0310-9956-ffa450edef68
2005-05-06 17:41:03 +00:00
John Dennis Casey 5877385df1 Final pass on cleaning up the mojo api...collapsed MavenPluginDescriptor and PluginDescriptor in the same way as MavenMojoDescriptor/MojoDescriptor had been; eliminated the need for plugin.descriptor.Dependency and MavenPluginDependency (using ComponentDependencies instead); adjusted the MojoExtractors (name?) to return Lists instead of Sets; added duplicate checking to a new addMojo(MojoDescriptor) method on PluginDescriptor, so we catch it on all sides; changed the Generators to use execute(outputDirectory, pluginDescriptor) rather than the myriad pluginDescriptor-derived values; added an IT for checking that the build for a plugin will fail if multiple mojos are detected with the same goal; and, added a special case to PluginDescriptor.getGoalPrefixFromArtifactId() to handle maven-plugin-plugin. That should be about it. I'm not sure that I've gotten the IT for that failure test added to svn yet, so that may follow.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@168481 13f79535-47bb-0310-9956-ffa450edef68
2005-05-06 00:32:08 +00:00
John Dennis Casey e095874576 Cleaned up plugin descriptor generation/reading to be more consistent, and to include some things that were being left out. Removed more deprecated behavior from annotations support and expression support. Wrote up the first pass on the mojo api and annotations spec. Fixed the mmld-mojo suppport to accommodate the new expression syntax and collisions with the default expression evaluator for mmld. Added an exception to plugin configuration in DefaultPluginManager to not look for a Field when the configurator == map-oriented.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@168233 13f79535-47bb-0310-9956-ffa450edef68
2005-05-05 01:33:42 +00:00
Brett Leslie Porter 24c6328ad3 declare the desired "prefix" inside the plugin descriptor instead of pulling apart the artifact ID (though that is how the default is created).
Currently, the reverse is not handled in anyway, so a non-default prefix may not work, but this makes the code easier to isolate.

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@168099 13f79535-47bb-0310-9956-ffa450edef68
2005-05-04 08:17:39 +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
John Dennis Casey 690bc67fb9 Added marmalade support back in...it's currently still using the libraries-shovelled-into-core method, but it now uses the new mojo mechanism that uses plexus ComponentConfigurators...had to make the lookup for configurators dynamic for the DefaultPluginManager, too.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@168064 13f79535-47bb-0310-9956-ffa450edef68
2005-05-04 03:28:41 +00:00
Brett Leslie Porter e7b911416f update tests to match new mojo API
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@165595 13f79535-47bb-0310-9956-ffa450edef68
2005-05-02 07:21:49 +00:00
John Dennis Casey a58632b9dd Renamed Plugin.java, AbstractPlugin.java, PluginExecutionRe(quest|sponse) PluginExecutionException to Mojo*
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@165238 13f79535-47bb-0310-9956-ffa450edef68
2005-04-29 00:12:09 +00:00
John Dennis Casey ab91b7f4c2 o Cleaned up field-level annotation support (especially descriptor extraction, generation, and building)
o Converted all "core" plugins (including maven-core-it-plugin) to use field-level annotations
o Removed generation of parameter descriptors for ${/#component.* param specifications.
o Added @readonly for parameters that cannot be overridden by user configuration (List override was dangerous here)
o Added validation against pom-derived configuration for @readonly parameters
o Fixed @parameter alias="" support...now configuration of the mojo instance actually will work with either the real param name or the alias. Would be nice to support multiple aliases, but that might require @alias annotations...
o Added [temporary?] support for null editable attributes for parameters, to support pre-built mojos from the repo.

Annotation support should be just about ready to go...


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@165224 13f79535-47bb-0310-9956-ffa450edef68
2005-04-28 23:05:01 +00:00
John Dennis Casey ed14ff454d Modifying the mojo generators to handle alias, and other missing elements where appropriate. Changed the resources mojos to be as trim as I can, and added @required to the field-level annotations (this might be a good thing to do for all plexus components, dunno if it's there already)...finally, trimmed up the annotation handling in the JavaMojoDescriptorExtractor to push as many annotation fields as possible into the endangered area, and started pulling as much info from the field, other companion annotations on the field, etc. as I can...I think the annotations are there, now. They need to be cleaned up after converting all the core plugins to use field-level annotations, then we're set.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@164990 13f79535-47bb-0310-9956-ffa450edef68
2005-04-27 15:11:28 +00:00
John Dennis Casey e771f3f56d fixed override of ancestor fields with locally declared ones in parameter processing
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@164942 13f79535-47bb-0310-9956-ffa450edef68
2005-04-27 03:59:06 +00:00
Brett Leslie Porter 3760f873a1 PR: MNG-167
Add the ability for a mojo to "fork" a phase execution, in a separate iteration of the lifecycle.
Add @executePhase generate-sources to idea:idea


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@164930 13f79535-47bb-0310-9956-ffa450edef68
2005-04-27 01:16:06 +00:00
John Dennis Casey 0af1c74587 Marked parts of the mojo parameter annotation processing that need to be removed when backward-compat is no longer an issue
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@164900 13f79535-47bb-0310-9956-ffa450edef68
2005-04-26 22:18:16 +00:00
John Dennis Casey d8d2e34dca Resolving MNG-221, simplify qdox with field-level mojo parameter annotations
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@164872 13f79535-47bb-0310-9956-ffa450edef68
2005-04-26 20:30:21 +00:00
Brett Leslie Porter ab2070d797 add deprecated parameter feature
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163983 13f79535-47bb-0310-9956-ffa450edef68
2005-04-20 16:49:01 +00:00
Brett Leslie Porter 85cc412a5f PR: MNG-225
use both groupId and artifactId in mojo descriptor


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163937 13f79535-47bb-0310-9956-ffa450edef68
2005-04-13 11:34:09 +00:00
Brett Leslie Porter 05ae5c03e3 split the plugin API and the plugin descriptor code
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163927 13f79535-47bb-0310-9956-ffa450edef68
2005-04-13 05:11:49 +00:00
Brett Leslie Porter e62f087f24 some POM enhancements
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163862 13f79535-47bb-0310-9956-ffa450edef68
2005-04-08 07:50:53 +00:00
Brett Leslie Porter 9d6fad725a change @requiresDependencyResolution to take a scope (default is "runtime" if no scope specified, none if tag not specified at all).
This still means ALL tests get the test dependencies of their compile time dependencies. Check if there is really a valid use case for that.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163780 13f79535-47bb-0310-9956-ffa450edef68
2005-04-05 08:17:28 +00:00
Brett Leslie Porter 935cda15da clean up dependencies.
Still need to clean up ~/maven2/lib and some large dependencies from marmalade that
shouldn't be needed in general - but down to about a 3Mb repository.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163775 13f79535-47bb-0310-9956-ffa450edef68
2005-04-05 04:11:03 +00:00
Brett Leslie Porter 14bb2c805a change the maven group ID
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163670 13f79535-47bb-0310-9956-ffa450edef68
2005-03-23 06:52:55 +00:00
Brett Leslie Porter 403255afc4 remove prereq
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163591 13f79535-47bb-0310-9956-ffa450edef68
2005-03-17 02:48:40 +00:00
Brett Leslie Porter a44b6f9726 flip pom format
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163511 13f79535-47bb-0310-9956-ffa450edef68
2005-03-10 01:35:25 +00:00
John Dennis Casey dfbae27c44 o Added first-pass logging and event-monitoring impls. Converted all System.out calls in maven-component plugins to use logger.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163457 13f79535-47bb-0310-9956-ffa450edef68
2005-03-04 09:04:26 +00:00
John Dennis Casey 8e82989334 o Refactored the plugin extractors to accept a MavenProject only, and pull the information they need from it in order to extract the mojos they're responsible for.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163435 13f79535-47bb-0310-9956-ffa450edef68
2005-03-01 02:43:22 +00:00
Brett Leslie Porter d5d05a51c5 start to enhance the lifecycle. Need to pre-process plugins as currently goals are only executed if added to a phase after the current goal. Also need plugin configuration to activate these changes.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163419 13f79535-47bb-0310-9956-ffa450edef68
2005-02-27 05:39:55 +00:00
Trygve Laugstol 53a4d44599 o Adding cvs ignores.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163416 13f79535-47bb-0310-9956-ffa450edef68
2005-02-26 18:07:09 +00:00
John Dennis Casey 52de04e862 Retrying commit after updating maven-core to HEAD.
o Fixed problems with plugin-plugin (had to do with refactored plugin-tools stuff)
o Added marmalade-mojo support, although without an integration test (verified it doesn't get in the way of 'normal' functionality, though)
o Added code in mboot2 to copy marmalade-mojo support libs to ${maven.home}/lib


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163405 13f79535-47bb-0310-9956-ffa450edef68
2005-02-24 05:12:30 +00:00
Brett Leslie Porter 6bafc23fc4 fix pesky typo
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163392 13f79535-47bb-0310-9956-ffa450edef68
2005-02-24 02:41:26 +00:00
John Dennis Casey 98002718c3 o Refactored mojo/plugin generation, extraction, etc. to accommodate multiple mojo languages.
o Tested with java mojos, mboot to verify nothing broken by refactor.
o TODO: Add marmalade support tests...currently only java-mojos are supported in mboot2, so this isn't going to interrupt things.
o TODO: Once marmalade support is tested, add to the list of artifacts built by mboot2.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163369 13f79535-47bb-0310-9956-ffa450edef68
2005-02-20 16:25:22 +00:00