Commit Graph

1210 Commits

Author SHA1 Message Date
John Dennis Casey b4e41217c6 Improve phase-tracking, event dispatching, and align build headers as events dispatched to the default event monitor...also, add debug-level enter/exit phase output in the default event monitor. Finally, refactored code that actually renders the build plan and executes the mojos for each task-segment in the lifecycle executor, to eliminate all the duplication.
This lays the ground work for improving cache management, since I also added event types for embedder control (keep in mind that event monitors can be used to control when the project/model cache is flushed, for example).


git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@631455 13f79535-47bb-0310-9956-ffa450edef68
2008-02-27 01:26:41 +00:00
John Dennis Casey 22817a2444 Fixing site-generation and other plugins that require reports.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@630048 13f79535-47bb-0310-9956-ffa450edef68
2008-02-21 23:31:38 +00:00
John Dennis Casey d54cf5b9bb Ignore missing modules during extension-scanning when MavenEmbedder.readProject(..) is called. At other times, as in the case of normal builds, don't suppress missing module exceptions.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@629571 13f79535-47bb-0310-9956-ffa450edef68
2008-02-20 18:53:09 +00:00
Carlos Sanchez Gonzalez 0ca8675e19 [MNG-3400] Implement clone properly following Effective Java' book considerations
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@627935 13f79535-47bb-0310-9956-ffa450edef68
2008-02-15 03:10:09 +00:00
Carlos Sanchez Gonzalez 17d401df6c [MNG-3400] MavenProject is not extensible
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@627670 13f79535-47bb-0310-9956-ffa450edef68
2008-02-14 06:08:07 +00:00
John Dennis Casey 0fc4704f30 [MNG-2184] Commenting this out again, until I can figure out how to make aggregators run once and only once, regardless of the contents of the reactor.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@619724 13f79535-47bb-0310-9956-ffa450edef68
2008-02-08 01:20:22 +00:00
John Dennis Casey 80f538bc52 Putting aggregator skip logic from previous commit ahead of warning messages, and adding some doco to the javadoc for the method to note the skip behavior.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@619721 13f79535-47bb-0310-9956-ffa450edef68
2008-02-08 01:06:16 +00:00
John Dennis Casey 34c390602c [MNG-2184] Skip aggregator-mojo execution when bound to the lifecycle (or bound as a report), and the current project is not the root project...in other words, detect aggregator mojos bound to the lifecycle in some way, and only execute them once using the root project.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@619720 13f79535-47bb-0310-9956-ffa450edef68
2008-02-08 01:03:03 +00:00
John Dennis Casey cc6b280343 Add warnings for deprecation of aggregator-mojos bound to the lifecycle, and add error/error-logging (error when directly in the pom, error-logging when brought in via lifecycle mapping, etc.) when a direct-invocation mojo (@requiresDirectInvocation) is bound to the lifecycle.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@619711 13f79535-47bb-0310-9956-ffa450edef68
2008-02-08 00:46:16 +00:00
Vincent Siveton 621d238877 MNG-3388: DefaultPluginManager needs to catch LinkageError
o added another catch
o based on r619408

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@619410 13f79535-47bb-0310-9956-ffa450edef68
2008-02-07 13:41:13 +00:00
Vincent Siveton 738cb3016b MNG-3388: DefaultPluginManager needs to catch LinkageError
o added the catch
o based on r619234

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@619237 13f79535-47bb-0310-9956-ffa450edef68
2008-02-07 00:57:42 +00:00
John Dennis Casey 04ad40121c [MNG-1493] Modifying to allow <module> to specify a full path, including alternate pom file, rather than just a directory wherein a normal 'pom.xml' is expected to reside. This works more like <relativePath> has worked for awhile now.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@618780 13f79535-47bb-0310-9956-ffa450edef68
2008-02-05 21:27:53 +00:00
John Dennis Casey 256d3cf86b [MNG-3331] Correcting URI.normalize call for only non-windows environments, since this apparently destroys UNC paths.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@618735 13f79535-47bb-0310-9956-ffa450edef68
2008-02-05 18:30:45 +00:00
John Dennis Casey 91d2e5abf9 [MNG-3331] Modified module path calculation to use URI.normalize to handle relative directory references, so there is no confusion about such references causing false positives on symlink detection (where getCanonicalPath() != getAbsolutePath()).
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@618708 13f79535-47bb-0310-9956-ffa450edef68
2008-02-05 17:31:57 +00:00
John Dennis Casey 10da177f1d [MNG-3119] Modifying MavenProject.addAttachment(..) and MavenProjectHelper.attachArtifact(..) implementations to throw an unchecked exception when a project attachment will collide with existing attachments. This includes tests to verify the behavior. The unchecked exception allows Maven to deal with it as a real build failure, while avoiding the need to modify the MavenProjectHelper API, which is part of Maven's core and which would render many existing plugins incompatible with new Maven releases.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@618497 13f79535-47bb-0310-9956-ffa450edef68
2008-02-05 00:09:27 +00:00
John Dennis Casey e38fa6fcc5 [MNG-3099] Modify the call to get the super-pom in cases where maven is not using any pom files, to ensure that profiles from the settings are used.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@618391 13f79535-47bb-0310-9956-ffa450edef68
2008-02-04 19:36:35 +00:00
John Dennis Casey e86a507c5d Fixing formatting on transitive resolution error (again).
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@617669 13f79535-47bb-0310-9956-ffa450edef68
2008-02-01 21:57:26 +00:00
John Dennis Casey c9d88e6ce3 Fixing formatting on transitive resolution error.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@617663 13f79535-47bb-0310-9956-ffa450edef68
2008-02-01 21:44:10 +00:00
John Dennis Casey f838337b7a Refactor the artifact-scanning logic from the realm manager and the plugin-artifact resolution logic in the plugin manager into two separate classes, one a component and one a static class, to allow the new PluginPrefixLoader to reuse some of both and create a lighter-weight approach to grabbing the PluginDescriptor for build-planning purposes...also avoids some needless error messages during build planning.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@617293 13f79535-47bb-0310-9956-ffa450edef68
2008-01-31 23:29:18 +00:00
John Dennis Casey e670bd3ea3 Adding the concept of recommended stacktrace hints for reported errors, and add the ability to directly access the list of exceptions that actually hit the error reporter (instead of having to use MavenExecutionResult.getExceptions() in conjunction with findReportedException(..) to unwrap them.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@617178 13f79535-47bb-0310-9956-ffa450edef68
2008-01-31 18:17:05 +00:00
John Dennis Casey b7ce1b8c93 Fixing the case where there were exceptions in the build, but for whatever reason they didn't trigger a reactor-manager build failure flag...in cases where there isn't really a project against which to log the error, for instance.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@616968 13f79535-47bb-0310-9956-ffa450edef68
2008-01-31 00:36:26 +00:00
John Dennis Casey 6c103fff87 Adding the build-plan instance for each project to the session and MavenExecutionResponse.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@616824 13f79535-47bb-0310-9956-ffa450edef68
2008-01-30 18:11:50 +00:00
John Dennis Casey ba9624676d Cleanup use of repositories for resolving plugin dependencies by using a LinkedHashSet to avoid duplicated repository defs (although two defs pointing to the same URL but with different id's will still look like two repos).
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@615004 13f79535-47bb-0310-9956-ffa450edef68
2008-01-24 21:29:12 +00:00
John Dennis Casey 48db18c81b Cleanup on pointcuts to make them slightly more efficient.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@614756 13f79535-47bb-0310-9956-ffa450edef68
2008-01-24 00:33:24 +00:00
John Dennis Casey 268d08b8a3 [MNG-3372] Improve error handling where a mojo is referenced but the plugin doesn't contain it (in direct-invocation cases), and fix plugin-version discovery where a plugin pom gives a maven prereq.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@614708 13f79535-47bb-0310-9956-ffa450edef68
2008-01-23 22:18:23 +00:00
John Dennis Casey 22e2b4ab35 Commenting out debug pointcut because it causes class sizes to balloon.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@614620 13f79535-47bb-0310-9956-ffa450edef68
2008-01-23 18:54:20 +00:00
John Dennis Casey 8d42ef1ce3 Fixing error-reporting pointcut that I broke.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@614342 13f79535-47bb-0310-9956-ffa450edef68
2008-01-22 22:01:57 +00:00
John Dennis Casey a23ed648fd adding basic bootstrapping instructions to the README.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@614337 13f79535-47bb-0310-9956-ffa450edef68
2008-01-22 21:52:28 +00:00
John Dennis Casey f2ea396212 Widening the pointcut to catch more potential places where plugin-loading could be a problem.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@614330 13f79535-47bb-0310-9956-ffa450edef68
2008-01-22 21:33:50 +00:00
John Dennis Casey 8b762300ef Improve diagnosis when no goals are passed in via the request (the goals List is null, not just empty). This can happen when used via the embedder in a non-cli scenario.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@614319 13f79535-47bb-0310-9956-ffa450edef68
2008-01-22 20:52:11 +00:00
John Dennis Casey 6d0563662c Improve error reporting bindings for two exception cases, to get away from handler(..) pointcuts which are less versatile for later debugging aspects to manipulate.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@614317 13f79535-47bb-0310-9956-ffa450edef68
2008-01-22 20:50:16 +00:00
Vincent Siveton 309fadbdcc o fixed duplicate license header
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@614084 13f79535-47bb-0310-9956-ffa450edef68
2008-01-22 01:26:47 +00:00
Milos Kleint c8b4b7294c the reactorpoms modules need to be checked recursively to satisfy this case:
parent --> submodule -->subsubmodule --> subsubsubmodule where parent defines a plugin with extensions in pluginManagement section and the subsubmodule is the one using the  plugin.

git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@613662 13f79535-47bb-0310-9956-ffa450edef68
2008-01-20 19:54:09 +00:00
Milos Kleint 863d1fcb8c when version is defined in plugin-management section, we need to use it in mojo binding.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@613256 13f79535-47bb-0310-9956-ffa450edef68
2008-01-18 20:20:46 +00:00
John Dennis Casey b731e783fa Adding new unit test for non-recursive run, where one of the modules that should NOT be read contains an invalid parent reference.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@613254 13f79535-47bb-0310-9956-ffa450edef68
2008-01-18 20:14:44 +00:00
John Dennis Casey facb56d1eb Fixing compilation errors.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@613035 13f79535-47bb-0310-9956-ffa450edef68
2008-01-18 01:38:37 +00:00
John Dennis Casey 89f482ac37 last of the error-reporting unit tests, and an additional error type to handle modules that are referenced but don't exist, which should stop the build. All tests pass.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@613032 13f79535-47bb-0310-9956-ffa450edef68
2008-01-18 01:27:23 +00:00
John Dennis Casey 724b3db3c4 Adding more error-reporting unit tests.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@612920 13f79535-47bb-0310-9956-ffa450edef68
2008-01-17 18:26:35 +00:00
John Dennis Casey 4bcfd7c5a5 more unit tests for error reporting on plugins-as-extensions.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@612895 13f79535-47bb-0310-9956-ffa450edef68
2008-01-17 18:01:29 +00:00
John Dennis Casey 0c61152546 More unit tests, this time for plugin-related error messages.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@612592 13f79535-47bb-0310-9956-ffa450edef68
2008-01-16 22:17:56 +00:00
John Dennis Casey ca169d0262 Refactor management of activated, deactivated, and default-activated profile ids, so the context tracks all of that stuff.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@612186 13f79535-47bb-0310-9956-ffa450edef68
2008-01-15 18:34:58 +00:00
John Dennis Casey 6e230d611a two more unit tests, and a little simplification to take care of duplicated error reporting coverage.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@611974 13f79535-47bb-0310-9956-ffa450edef68
2008-01-14 23:59:01 +00:00
John Dennis Casey c3983894ab Adding more error-reporting fixes and unit tests.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@611945 13f79535-47bb-0310-9956-ffa450edef68
2008-01-14 21:44:59 +00:00
Milos Kleint e10f025310 Add Thread.getId() to the realm identification, a simple trick to make DefaultMavenRealmManager lifecycle safe for paralel execution.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@611615 13f79535-47bb-0310-9956-ffa450edef68
2008-01-13 18:19:35 +00:00
Milos Kleint fc244926ca comment on multithreading.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@611548 13f79535-47bb-0310-9956-ffa450edef68
2008-01-13 08:41:12 +00:00
John Dennis Casey 25460922d5 More unit tests for error-reporting pointcuts, and some minor adjustments for duplicated handler methods.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@611014 13f79535-47bb-0310-9956-ffa450edef68
2008-01-11 01:57:27 +00:00
John Dennis Casey dc770e321b Adding some unit tests (mostly stubbed out at the moment) to start testing the pointcuts used to shunt build errors off to the appropriate error-reporter method.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@610618 13f79535-47bb-0310-9956-ffa450edef68
2008-01-10 00:07:48 +00:00
Brian E Fox c754ccad3a MNG-2166: enhanced missing goal error info. (fix from 587339:587340 in 2.0.x)
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@609085 13f79535-47bb-0310-9956-ffa450edef68
2008-01-05 02:49:42 +00:00
John Dennis Casey 40c84ecb79 Fixing for windows users everywhere.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@605125 13f79535-47bb-0310-9956-ffa450edef68
2007-12-18 07:58:45 +00:00
John Dennis Casey fe4363a4c5 Removing the build overlay, as it was causing problems with path translation, and doesn't serve any real purpose.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@605095 13f79535-47bb-0310-9956-ffa450edef68
2007-12-18 05:36:03 +00:00