David H. DeWolf wrote:


Elliot Metsger wrote:
Hi David,

Is the groupId for the pluto maven plugin supposed to be 'org.apache.maven.plugins' or 'org.apache.pluto'?

It should be org.apache.pluto. All this time it's been in the maven namespace and shouldn't have been.

Got it, thanks.

FYI the command I have been using to clean out pluto artifacts from my
repository was:
find ~/.m2 -name "*pluto*" -a -type d | xargs -i rm -rf {}

It builds from root without a problem - right?

I am able to 'mvn install' from root (after fixing the pluto-testsuite
pom.xml - below), but 'mvn pluto:install -DinstallDir=<path/to/tomcat>'
fails [0], because apparently for maven to magically resolve the goal
prefix 'pluto' requires that the plugin be a part of the
org.apache.maven.plugins groupId [1], [2].  You have to run 'mvn
org.apache.pluto:maven-pluto-plugin:install -DinstallDir=<path/to/tomcat>' in order to
execute the Pluto maven plugin (unless something is up with my install??).

In order to enable the prefix 'pluto:<goal>', and keep in the org.apache.pluto group, I think we need to publish
a metadata.xml file to the base of Pluto's repository:
http://mirrors.dotsrc.org/maven2/org/apache/pluto/.  See for example the
way the Maven team is doing it:
http://www.ibiblio.org/maven2/org/apache/maven/plugins/maven-metadata.xml.
Next, the Pluto maven plugin itself needs to be published to the repository, then(!) you have to add an entry to ~/.m2/settings.xml:
<pluginGroups>
  <pluginGroup>org.apache.pluto</pluginGroup>
</pluginGroups>

I haven't tried all of that yet, its just based on my experimentation
and reading.  I'm hoping that the modification of ~/.m2/settings.xml
isn't needed...


This causes a build failure [0]. Adding '<groupId>org.apache.maven.plugins</groupId>' to the maven-pluto-plugin/pom.xml, and re-installing the plugin fixed the issue.

Hmmm, shouldn't have to do that.

the testsuite module needs to have the groupId org.apache.pluto added, otherwise maven looks for for org.apache.maven.plugins:maven-pluto-plugin when trying to download the dependency.

[EMAIL PROTECTED]:~/src/asf/svn-exports/release-1.1.0-beta2/pluto-testsuite$ svn
cat $PLTAG/release-1.1.0-beta2/pluto-testsuite/pom.xml | diff -u - pom.xml
--- -   2006-09-25 22:11:41.445413000 -0400
+++ pom.xml     2006-09-25 22:10:44.000000000 -0400
@@ -99,6 +99,7 @@
       </plugin>
       <!-- bind 'pluto:assemble' goal to 'process-resources' lifecycle -->
       <plugin>
+        <groupId>org.apache.pluto</groupId>
         <artifactId>maven-pluto-plugin</artifactId>
         <version>${pom.version}</version>
         <executions>
[EMAIL PROTECTED]:~/src/asf/svn-exports/release-1.1.0-beta2/pluto-testsuite$


[..snip..]

With regard to the binary release, this shouldn't be a problem as long as the maven-pluto-plugin is installed to a reachable maven repository with the correct groupId.

It shouldn't be anywhere with the maven namespace. Is it?

No, the incorrect namespace is not referenced anywhere.

We'll need to update docs to make sure that they are pointing to the pluto namespace.

I'll take a pass through all the docs. When using the maven-pluto-plugin in the <plugin> section of the pom, it appears we need the groupId of 'org.apache.pluto' included.

Anything else we need to fix?

For the binary release:
1. Publishing the maven-pluto-plugin to the repository using the org.apache.maven groupId (e.g. this enables 'mvn integration-test' to work properly) 2. Publishing a metadata.xml to http://mirrors.dotsrc.org/maven2/org/apache/pluto/ (if you agree on the proposed solution, this should enable 'mvn pluto:<goalname>' to work) 3. Update the Deployment and Assembly documentation to use the org.apache.pluto groupId.

If you are planning to re-cut the binaries then we should fix:
4. The pluto-testsuite pom.xml and add '<groupId>org.apache.pluto</groupId>' to the <plugin> section

I can do items 3 and 4, if you can do items 1 and 2 (I'm not sure I have the karma to publish). I will re-test after all the items are complete (I'm off work for the next couple of weeks).

I presume that the commits required for items 3 and 4 should occur on trunk and the tag.

Post release:
1. Merge some of the tag commits back to trunk?
449543 (your maven tweaks)
447211 (adding the repo to the pom)
446874 (updating build to use tomcat 5.5.17)

Others?

Thanks,
Elliot

David

[0]
[EMAIL PROTECTED]:~/src/asf/svn-exports/release-1.1.0-beta2$ mvn -X -e
pluto:install
-DinstallDir=/home/esm/apache/apache-tomcat-5.5.17-pluto11beta2
+ Error stacktraces are turned on.
Maven version: 2.0.4
[DEBUG] Building Maven user-level plugin registry from:
'/home/esm/.m2/plugin-registry.xml'
[DEBUG] Building Maven global-level plugin registry from:
'/home/esm/apache/maven-2.0.4/conf/plugin-registry.xml'
[INFO] Scanning for projects...
[INFO] Reactor build order:
[INFO]   Apache Pluto
[INFO]   Pluto Descriptor Service API
[INFO]   Pluto Descriptor Service Implementation
[INFO]   Pluto Portlet Container
[INFO]   Pluto Portlet Tag Library
[INFO]   Pluto Portal Driver
[INFO]   Pluto Portal Driver Implementation Classes
[INFO]   Pluto Portal
[INFO]   Pluto Utilities
[INFO]   Maven Pluto Installer Plugin
[INFO]   Pluto Testsuite Portlet
[INFO]   Pluto Ant Tasks
[INFO]   Pluto Website Documentation
[INFO] Searching repository for plugin with prefix: 'pluto'.
[DEBUG] maven-pluto-plugin: using locally installed snapshot
[DEBUG] Artifact not found - using stub model: Unable to determine the
latest version

  org.apache.maven.plugins:maven-pluto-plugin:pom:LATEST


[DEBUG] Using defaults for missing POM
org.apache.maven.plugins:maven-pluto-plugin:pom:LATEST
[DEBUG] maven-pluto-plugin: using locally installed snapshot
[DEBUG] Artifact not found - using stub model: Unable to determine the
release version

  org.apache.maven.plugins:maven-pluto-plugin:pom:RELEASE


[DEBUG] Using defaults for missing POM
org.apache.maven.plugins:maven-pluto-plugin:pom:RELEASE
[INFO]
------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO]
------------------------------------------------------------------------
[INFO] The plugin 'org.apache.maven.plugins:maven-pluto-plugin' does not
exist or no valid version could be found
[INFO]
------------------------------------------------------------------------
[DEBUG] Trace
org.apache.maven.lifecycle.LifecycleExecutionException: The plugin
'org.apache.maven.plugins:maven-pluto-plugin' does not exist or no valid
version could be found
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.verifyPlugin(DefaultLifecycleExecutor.java:1281)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.getMojoDescriptor(DefaultLifecycleExecutor.java:1517)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.segmentTaskListByAggregationNeeds(DefaultLifecycleExecutor.java:381)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:135)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:322)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:115)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:256)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at
org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
        at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
        at
org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
        at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by:
org.apache.maven.plugin.version.PluginVersionNotFoundException: The
plugin 'org.apache.maven.plugins:maven-pluto-plugin' does not exist or
no valid version could be found
        at
org.apache.maven.plugin.version.DefaultPluginVersionManager.resolvePluginVersion(DefaultPluginVersionManager.java:225)
        at
org.apache.maven.plugin.version.DefaultPluginVersionManager.resolvePluginVersion(DefaultPluginVersionManager.java:87)
        at
org.apache.maven.plugin.DefaultPluginManager.verifyPlugin(DefaultPluginManager.java:158)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.verifyPlugin(DefaultLifecycleExecutor.java:1252)
        ... 14 more
[INFO]
------------------------------------------------------------------------
[INFO] Total time: 2 seconds
[INFO] Finished at: Mon Sep 25 22:15:10 EDT 2006
[INFO] Final Memory: 1M/3M
[INFO]
------------------------------------------------------------------------

[1]
http://maven.apache.org/guides/plugin/guide-java-plugin-development.html
see "Shortening the command line"

[2]
http://www.nabble.com/-jira--Commented%3A-%28MNG-1231%29-pluginGroups-ignored-in-settings.xml-tf1576721.html#a4280364


Reply via email to