Commit Graph

598 Commits

Author SHA1 Message Date
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
Brett Leslie Porter f86ee59771 PR: MNG-297
Make sure that the base version is correctly set to -SNAPSHOT instead of a resolved timestamp when appropriate


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163916 13f79535-47bb-0310-9956-ffa450edef68
2005-04-12 23:51:21 +00:00
Brett Leslie Porter b3b831ec31 gone back to test dependencies not being transitive at all, as reversed in rev1.3 of ProjectClasspathTest. This enables the execution of "m2 test" not to pull in all and sundry test dependencies, eg from wagon. Find a valid use case before re-instating, and look into alternatives for the download issues.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163783 13f79535-47bb-0310-9956-ffa450edef68
2005-04-05 08:43:32 +00:00
Brett Leslie Porter d3781103e8 change resolve() methods to not return Artifact - but instead modify the original. Artifact is immutable except for version so it is safe - but will it cost flexibility later. Currently, this makes it much simpler as less copying vigilance is required.
This has ironed out most wrinkles. Still need to implement the snapshot checking cache, and special case the use of installed snapshots over deployed ones.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163706 13f79535-47bb-0310-9956-ffa450edef68
2005-03-29 16:41:13 +00:00
Trygve Laugstol 16ea6ce332 o Fixing a NullPointerException in the value extractor if the specified getter
didn't exists. The value extractor will now return null if the getter doesn't
  exists.
o Properly implemented the method caching in the value exctrator.
o Changed the RegexBasedModelInterpolator so it would properly handle null
  values. It used to convert null to "null" and then insert that, now it will
  leave the expression as is.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163696 13f79535-47bb-0310-9956-ffa450edef68
2005-03-28 14:37:41 +00:00
Brett Leslie Porter 39a96456cd can't do this yet
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163695 13f79535-47bb-0310-9956-ffa450edef68
2005-03-24 16:16:49 +00:00
Brett Leslie Porter d0e15a1f37 remove unused class
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163680 13f79535-47bb-0310-9956-ffa450edef68
2005-03-24 04:44:41 +00:00
Brett Leslie Porter 9532b897aa make abstract - contains no tests
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163679 13f79535-47bb-0310-9956-ffa450edef68
2005-03-24 04:44:12 +00:00
Brett Leslie Porter 5e2caf89c7 o put all of the path functions back into the artifact handler manager - that class likely needs a rename.
o Removed AbstractArtifactComponent as it was simply delegating to the class and prevented other inheritence for the resolver which seems more appropriate.
o fixed test failure in ProjectClasspathTest due to incorrectly constructed component - using plexus even though still working around the problem with a hack


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163675 13f79535-47bb-0310-9956-ffa450edef68
2005-03-23 08:42:57 +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 b84d4bc35e revert <includes> and <excludes> in MDO to old format
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163666 13f79535-47bb-0310-9956-ffa450edef68
2005-03-22 14:26:28 +00:00
Brett Leslie Porter e0e405fe68 clean up plugin configuration handling
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163652 13f79535-47bb-0310-9956-ffa450edef68
2005-03-22 10:46:55 +00:00
John Dennis Casey 590e952f02 CHANGES
------------------------

o Factored the layout for a repository into a separate set of components in o.a.m.a.repository.layout

o Added new DefaultRepositoryLayout that uses the repo layout in http://docs.codehaus.org/pages/viewpage.action?pageId=22230 (it is not used by default until we get the repo1 conversion done)

o Added command-line switches to force legacy local-repo or new format (-a/-A, I know, but try to find something that makes more sense!)

o Added path formatting to the repository itself, which is now constructed with a ArtifactRepositoryLayout instance (since layout should be tied to the repository)

o Removed path formatting altogether from the DefaultArtifactHandlerManager.

o Changed the AbstractArtifactBasedComponent (or whatever it's called) to use the repository formatting in the path() and localPath() methods.

o Moved the plugin repo construction (still intact as a hard-coded singleton list) into the DefaultMavenProjectBuilder, where it will eventually build from POM info.

o Added a new method to build an artifact repository for a <distributionManagement/> section, if possible. This reduced the strain on mojos to construct an ArtifactRepository on demand.

o Refactored all *DeployMojo to use #project.distributionManagementArtifactRepository instead of the #settings, #component..ArtifactRepositoryFactory, ... that it used to require. This is a big simplifying step.

o Removed remote artifact repository construction from DefaultMaven, and changed the MavenSession to delegate to MavenProject for remoteArtifactRepositories, just as it does for pluginRepositories.

o Added remoteArtifactRepositories, pluginArtifactRepositories, distributionManagementArtifactRepository to MavenProject as a cache for the higher-level repos used throughout the system. This is project info, so it belongs here.

o Fixed all the tests in maven-core and maven-artifact which I broke. :)

o Dropped what is probably a big format-bomb, since the Eclipse formatter doesn't really handle 'throws Exception' wrapping the right way.

o Added MavenProject to the MavenSession constructor, since there should always be a MavenProject associated with a build, even if it's just the super-pom.

TODO:
--------------------------

- Write an integration/unit test to ensure that the new repo format works with $classifier (was: $extra) and $groupId[0]/../$groupId[n]. This is a simple adaptation of the old layout, but still needs testing.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163638 13f79535-47bb-0310-9956-ffa450edef68
2005-03-21 08:18:34 +00:00
Brett Leslie Porter 5a296f03c8 clean up old tests
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163623 13f79535-47bb-0310-9956-ffa450edef68
2005-03-21 01:01:35 +00:00
Brett Leslie Porter 8e9ec9c892 move log to AbstractPlugin, out of request. Request now contains only parameters (will move to fields) and marmalade context (can move to marmalade mojo wrapper)
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163622 13f79535-47bb-0310-9956-ffa450edef68
2005-03-21 00:07:39 +00:00
Brett Leslie Porter a593e7df88 change the plugin execution response to be an exception instead since it only handled failures.
any returns from success will be conveyed by the request, soon to be converted into fields on the plugin. These will eventually be extracted using OGNL, but this is all post alpha-1 work


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163621 13f79535-47bb-0310-9956-ffa450edef68
2005-03-20 23:22:01 +00:00
Brett Leslie Porter 829e2051f6 PR: MNG-207
scope must be considered globally - redefining it weaker must not win.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163589 13f79535-47bb-0310-9956-ffa450edef68
2005-03-17 02:04:35 +00:00
John Dennis Casey e9a9323812 o Changed maven-user-model/UserModel/UserModelBuilder to maven-settings/MavenSettings/MavenSettingsBuilder.
This supports a change to a simpler local configuration file (~/.m2/settings.xml by default), which has the general format of:

<settings>
  <profiles>
    <profile>
      <active>true</active> <!-- not needed if this is the only profile -->
      <localRepository>/path/to/repo</localRepository>
    </profile>
    .
    .
    .
  </profiles>
  <servers>
    <server>
      <id>myserver</id>
      <username>me</username>
      <password>mypass</password>
      <privateKey>/path/to/key</privateKey>
      <passphrase>key-passphrase</passphrase>
    </server>
    .
    .
    .
  </servers>
  <proxies>
    <proxy>
      <active>true</active> <!-- not needed if this is the only proxy -->
      .
      .
      .
    </proxy>
    .
    .
    .
  </proxies>
</settings>

o Added special parameter named '#settings' which simply injects the current MavenSettings from the MavenSession into the request parameters.
o Adjusted the it-verifier and mboot2 accordingly.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163578 13f79535-47bb-0310-9956-ffa450edef68
2005-03-16 06:29:35 +00:00
Brett Leslie Porter de262b4236 o refactor usage of build methods
o do not do path resolution for repository POMs
o source poms override repository poms in the cache


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163577 13f79535-47bb-0310-9956-ffa450edef68
2005-03-16 05:08:50 +00:00
John Dennis Casey 4d1ca8da33 o Removed AuthenticationInfoProvider stuff
o Added ArtifactRepositoryFactory stuff to construct with AuthenticationInfo if possible.
o Added UserModelBuilder stuff for componentizing UserModel construction.
  -> DefaultUserModelBuilder has a configuration point 'userModelPath' which can redirect where it reads user.xml from (${user.home} is substitutable here).
o Added warning message to deployment plugin when deployment repo has no authentication info available.
o Added warning message for repos with null <id/> (auth info cannot be assigned here).
o Added a couple of debug-level messages for aid in debugging repo- and userModel-related problems.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163558 13f79535-47bb-0310-9956-ffa450edef68
2005-03-15 21:41:06 +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 7f6f4452f2 o Changed Set to List for remote repo handling so that we can maintain declarative ordering in remote repos we use.
o Added UserModel support, integrated with maven-artifact and wagon via AuthenticationInfoProvider implementation.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163501 13f79535-47bb-0310-9956-ffa450edef68
2005-03-09 05:48:31 +00:00
Brett Leslie Porter 1fe8c76a3d move all artifact creation to artifact factory - further refactoring planned
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163499 13f79535-47bb-0310-9956-ffa450edef68
2005-03-09 02:39:10 +00:00
Brett Leslie Porter e8a0f65e58 actually, test deps are transitive, just not for other test deps
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163496 13f79535-47bb-0310-9956-ffa450edef68
2005-03-08 07:11:43 +00:00
John Dennis Casey 77d3e6c5f5 o Added (pom|project)? to the eval pattern in the regex param extractor, to trim ${project.artifactid} to mean the same as ${artifactId} within the pom.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163490 13f79535-47bb-0310-9956-ffa450edef68
2005-03-08 06:06:22 +00:00
Brett Leslie Porter b5f8943edf transitive test dependencies should be ignored
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163488 13f79535-47bb-0310-9956-ffa450edef68
2005-03-08 06:01:43 +00:00
Brett Leslie Porter b31db60bff tests and repairs for scope
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163486 13f79535-47bb-0310-9956-ffa450edef68
2005-03-08 05:34:52 +00:00
Brett Leslie Porter 0d7111f7ba gone to maven-artifact
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163479 13f79535-47bb-0310-9956-ffa450edef68
2005-03-08 01:38:51 +00:00
John Dennis Casey 2513cb25aa o Added <pluginManagement/>
o Removed goal decoration.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163468 13f79535-47bb-0310-9956-ffa450edef68
2005-03-07 19:03:19 +00:00
Brett Leslie Porter 8c6292c23f remove <file>, add <scope>
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163463 13f79535-47bb-0310-9956-ffa450edef68
2005-03-07 08:15:26 +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
Brett Leslie Porter dac661c709 path alignment for files in dependency
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163401 13f79535-47bb-0310-9956-ffa450edef68
2005-02-24 04:37:54 +00:00
Brett Leslie Porter fd8d091275 place tests in consistent locations
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163400 13f79535-47bb-0310-9956-ffa450edef68
2005-02-24 04:21:52 +00:00
Brett Leslie Porter 87b3e49afd add file to dependency, and handle in injection
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163399 13f79535-47bb-0310-9956-ffa450edef68
2005-02-24 04:16:18 +00:00
Brett Leslie Porter 4b7ab94e31 removed unused source directories
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163398 13f79535-47bb-0310-9956-ffa450edef68
2005-02-24 04:15:47 +00:00
Brett Leslie Porter c022a8807d use ${..} style interpolation
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163381 13f79535-47bb-0310-9956-ffa450edef68
2005-02-23 03:56:25 +00:00
Brett Leslie Porter 4465e49559 refactoring:
- use an expression in the suport POM to set up finalName
- have interpolator and injector deal only with model


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163380 13f79535-47bb-0310-9956-ffa450edef68
2005-02-23 03:27:00 +00:00
Brett Leslie Porter ec94b8fe2e move injectors to a package
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163377 13f79535-47bb-0310-9956-ffa450edef68
2005-02-23 01:59:34 +00:00
Jason van Zyl 780b693240 o the introduction of the lifecycle stuff we've been chatting about so you
can now do things like:

  m2 package

  which makes the jar

  m2 install

  which installs the jar

  m2 test

  You can also execute individual goals still like:

  clean:clean
  pom:install
  idea:idea

  Execution of goals this way will still have the dependency resolution
  flag obeyed but they are run in isolation in that pre/post goals don't
  exist anymore. You need to slot your mojos into the lifecycle.

  I will add the mechanism whereby configuring a plugin will push
  the mojo into the lifecycle.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163359 13f79535-47bb-0310-9956-ffa450edef68
2005-02-16 07:16:33 +00:00
John Dennis Casey 4f8225545e o Added pom interpolation based on regex search-and-replacement with ReflectionValueExtractor pom lookups.
o Moved ReflectionProjectValueExtractor into o.a.m.util package and renamed to ReflectionValueExtractor
o Added unit tests for interpolation
o Added integration test for interpolation


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163335 13f79535-47bb-0310-9956-ffa450edef68
2005-02-03 20:54:15 +00:00
Brett Leslie Porter 6503a19dfc add license, reformat to style and change failing test
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163333 13f79535-47bb-0310-9956-ffa450edef68
2005-02-03 09:10:02 +00:00
John Dennis Casey da47c49f4f o Revised the defaults section to <dependencyManagement>, all builds and is happy.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163325 13f79535-47bb-0310-9956-ffa450edef68
2005-02-02 02:23:12 +00:00
John Dennis Casey e687cfed61 o Added dependencyDefaults section to POM.
The nested <dependencyDefault> element closely mirrors the <dependency> element specification.
  It provides the ability to set url, artifact, properties, version for a dependency that matches on
  {groupId, artifactId, type}. Url, artifact, and version will only override the dependency's values if
  the dependency doesn't provide the value, and (in the case of url and artifact) the dependency
  doesn't provide a version (url and artifact are assumed to be version-specific).

  Properties will only be overwritten, and only in the case where the dependency
  doesn't specify them.

  Dependencies are validated after merging with defaults, since version is not required
  on either <dependency> or <dependencyDefault> but is required between the two.

o Added component interface/default impl for injecting project defaults.
o Added unit and integration tests.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163323 13f79535-47bb-0310-9956-ffa450edef68
2005-02-01 22:43:03 +00:00
Jason van Zyl a6a0eab73d *** empty log message ***
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163275 13f79535-47bb-0310-9956-ffa450edef68
2004-12-28 19:32:54 +00:00
Jason van Zyl 16036aa792 updating copyright
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163264 13f79535-47bb-0310-9956-ffa450edef68
2004-12-25 16:26:25 +00:00
Jason van Zyl d7591b9f76 o move some shared execution request handling code to the super class
o cleanup the plugin manager interface, we don't need to set the local
  repository as that information is in the request and session.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163259 13f79535-47bb-0310-9956-ffa450edef68
2004-12-24 17:29:42 +00:00
Jason van Zyl 754feeadb3 *** empty log message ***
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163257 13f79535-47bb-0310-9956-ffa450edef68
2004-12-23 23:46:42 +00:00
Jason van Zyl 3a28b21872 o removing the use of OGNL, snagged some classes from velocity to do
the plugin parameter expression evaluation.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163241 13f79535-47bb-0310-9956-ffa450edef68
2004-12-05 21:45:36 +00:00
Jason van Zyl 4eff8b0aea o Trying to keep only keep the main entry point into maven as the only classes in the top level package.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163238 13f79535-47bb-0310-9956-ffa450edef68
2004-12-05 04:16:07 +00:00
Jason van Zyl 91da8f24e7 o removal of xstream
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163214 13f79535-47bb-0310-9956-ffa450edef68
2004-10-24 18:15:08 +00:00
Trygve Laugstol 74c818888a o Fixing MNG-90:
- Improved the SCM part of the ModelInheritanceAssembler
o Fixing some eclipse warnings and adding some licenses.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163191 13f79535-47bb-0310-9956-ffa450edef68
2004-10-11 22:56:47 +00:00
Trygve Laugstol 698119ea0b o Added mavenHomeLocal as a argument to the project builder. The project
builder should now completly obey mavenHomeLocal.
o Made mavenHome and mavenHomeLocal Files instead of Strings.
o Adding licenses to some files missing license.
o Silencing some eclipse warnings.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163188 13f79535-47bb-0310-9956-ffa450edef68
2004-10-08 19:15:02 +00:00
Jason van Zyl 5bfcebab21 o adding per goal/mojo configuration
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163183 13f79535-47bb-0310-9956-ffa450edef68
2004-10-03 19:28:25 +00:00
Jason van Zyl e26f756e8f o adding necessary bits and bobs for plugin configuration
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163179 13f79535-47bb-0310-9956-ffa450edef68
2004-10-01 14:53:48 +00:00
Jason van Zyl 22f5fe58dc o i want a whole canonical test, but we know most things are working from the integration tests and i am specifically interested in plugin configuration at the moment so that's what's going in right now.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163177 13f79535-47bb-0310-9956-ffa450edef68
2004-10-01 14:12:40 +00:00
John Dennis Casey 5f23120ff6 o Fixed goal decorator inheritance deficiency.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163137 13f79535-47bb-0310-9956-ffa450edef68
2004-09-22 02:58:12 +00:00
John Dennis Casey 90c3f69e1c o removed the current mojo descriptor stuff from the goal execution context...doesn't seem to be used anywhere, and it'll cause problems if the current goal is from a plugin that has not been resolved yet.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163135 13f79535-47bb-0310-9956-ffa450edef68
2004-09-22 00:23:35 +00:00
John Dennis Casey 78563d686f o Refactored the goal/plugin resolution part of the lifecycle.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163132 13f79535-47bb-0310-9956-ffa450edef68
2004-09-21 23:11:16 +00:00
Brett Leslie Porter 27738439ee optimize imports
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163082 13f79535-47bb-0310-9956-ffa450edef68
2004-09-15 12:34:17 +00:00
Brett Leslie Porter 81cc07979a optimize imports
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163081 13f79535-47bb-0310-9956-ffa450edef68
2004-09-15 12:30:05 +00:00
Emmanuel Venisse 1797335136 Test type inheritance.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163032 13f79535-47bb-0310-9956-ffa450edef68
2004-09-06 12:10:27 +00:00
Brett Leslie Porter c13e8c7629 PR: MNG-74
remove maven.properties use everywhere except classworlds conf


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163024 13f79535-47bb-0310-9956-ffa450edef68
2004-09-02 12:34:19 +00:00
John Dennis Casey a949eb66de o Removed GoalDecorationPhase, since goal decoration is now a part of the model
o Removed PluginDownloadPhase, since plugin resolution/download has to be a part of the prereq and pre/postGoal resolution, too
o Changed DefaultMaven to execute the session lifecycle, and the component wiring to likewise wire the DefaultMaven with a session lifecycle manager
o Removed the org.apache.maven.decoration package and its contents, since this is all in the model now
o Fixed the GoalResolutionPhase to verify each goal's plugin in turn as it resolves prereqs, preGoals and postGoals
o Fixed the GoalResolutionPhaseTest to work with the new resolution model
o Added a new createGoalExecutionContext to the MavenTestCase base class, to allow me to inject a MavenProject directly rather than a pom file
o Fixed the MavenLifecycleManagerTest to only expect 4 lifecycle phases, now than the plugin resolution and goal decoration phases are obsoleted
o All builds on local machine, but will depend on plexus-0.17.jar/pom and plexus-artifact-container-1.0-alpha-1.jar/pom to build on beaver
o I uploaded plexus-artifact-container-1.0-alpha-1.jar to ${plexus.home}/dist, but cannot upload POMs due to priveleges problem in poms dir.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163007 13f79535-47bb-0310-9956-ffa450edef68
2004-08-26 04:40:02 +00:00
John Dennis Casey 24ce8263d9 o Changed to depend on plexus-0.17 instead of -0.16
o Changed the embedder/container used to be the new artifact-aware container (plexus-artifact-container-1.0-alpha-1)
o Added new dependency to maven-core for artifact-container.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163006 13f79535-47bb-0310-9956-ffa450edef68
2004-08-26 01:18:19 +00:00
John Dennis Casey 975e9491d8 o Reformatted source code.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163002 13f79535-47bb-0310-9956-ffa450edef68
2004-08-23 20:41:45 +00:00
John Dennis Casey 28be3319be o Replaced license in source
o Added testing to show failure to merge resources from parent into child build which specifies a build without these elements
o Fixed resource blending for child build sections which don't specify them.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163001 13f79535-47bb-0310-9956-ffa450edef68
2004-08-23 20:24:54 +00:00
John Dennis Casey 2a3f7b7220 o Added unit test to express lack of source directory inheritance (*ourceDirectory within <build>)
o Fixed *ourceDirectory inheritance


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@163000 13f79535-47bb-0310-9956-ffa450edef68
2004-08-23 20:04:34 +00:00
Jason van Zyl 5e0b187204 o more additions to the session code, not turned on yet but doing things in
smaller batches.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@162980 13f79535-47bb-0310-9956-ffa450edef68
2004-08-15 15:01:52 +00:00
Jason van Zyl 097c8f7623 o started building up the code that we will use for the session lifecycle
-> bascially the mechanism is the same as the one we use for the goal
     execution lifecycle

  This first cut is so John can see as we're discussing the session stuff
  at the moment and I need to get this working in order to push all notions
  of artifact handling out of MavenProject.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@162969 13f79535-47bb-0310-9956-ffa450edef68
2004-08-12 22:52:55 +00:00
Jason van Zyl e232e07440 o changing MavenLifecycleContext to MavenGoalExecutionContext which is what
it really is. Making way for the notion of a MavenSessionExecutionContext
  and it is looking like we will end up with two lifecycles. Where we are
  dealing with notions of goals and sessions: some operations need to be
  done at the session level and don't need to be repeated for the execution
  of every goal.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@162968 13f79535-47bb-0310-9956-ffa450edef68
2004-08-12 18:41:15 +00:00
Jason van Zyl 133a51a629 o removing any notions of the local repository from MavenProject, not the
right place for it.


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@162967 13f79535-47bb-0310-9956-ffa450edef68
2004-08-12 17:55:48 +00:00
Jason van Zyl 601320d28f Initial revision
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@162925 13f79535-47bb-0310-9956-ffa450edef68
2004-08-09 19:02:31 +00:00