David,

I noticed that the maven pluto plugin is now published into the repository, along with the 'maven-metadata.xml' file in http://mirrors.dotsrc.org/maven2/org/apache/pluto/. I have the org.apache.pluto groupId in my settings.xml <pluginGroups>/<pluginGroup> element.

I can successfully use 'mvn integration-test -Dpluto.home=/path/to/tomcat' using the binary install!

But I still can't run 'mvn pluto:install -DinstallDir=/path/to/tomcat' from the root of the beta2 tag. Can you? I do not think it needs to be resolved prior to beta2 being released, what do you and others think?

With a clean repository I get [0]. Two things of note. One is that it does check the repository for the org.apache.pluto groupId to resolve the 'pluto' plugin prefix:

[INFO] org.apache.pluto: checking for updates from central

Second, I sniffed the wire while running the above mvn command and saw this:
GET /maven2/org/apache/pluto/maven-metadata.xml
200 OK
GET /maven2/org/apache/pluto/maven-metadata.xml.sha1
200 OK
GET /maven2/org/apache/maven/plugins/maven-pluto-plugin/maven-metadata.xml
404 Not Found

I'm not sure why it is doing the third GET for the org.apache.maven.plugins group Id.

I'm puzzled - wondering if it is just me and if it is working for you. I will dig a little more.

I'm wondering if http://www.ibiblio.org/maven2/org/apache/pluto/maven-metadata.xml needs to have a <groupId>org.apache.pluto</groupId> in it.

Elliot


[0] Output of mvn -X -e pluto:install -DinstallDir=/home/esm/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'.
[INFO] org.apache.pluto: checking for updates from central
[INFO] artifact org.apache.maven.plugins:maven-pluto-plugin: checking for updates from central [DEBUG] repository metadata for: 'artifact org.apache.maven.plugins:maven-pluto-plugin' could not be found on repository: central
[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: 3 seconds
[INFO] Finished at: Wed Sep 27 17:49:56 EDT 2006
[INFO] Final Memory: 1M/3M
[INFO] ------------------------------------------------------------------------






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...

Reply via email to