Greetings,

I'm attempting to follow best practice and lock down plugins in our
parent POM. From what I understand, I should use a version range
instead of a plain version number to accomplish a true lock down for
future reproducibility. E.g. for the clean plugin I would use [2.2]
instead of just 2.2 as Maven considers the latter to be a
recommendation rather than a requirement.

Now trouble starts, I attempt to put the pluginManagement section
below in my POM and execute mvn clean. From the output below it seems
like Maven is attempting to resolve the version as "[2.2]" instead of
resolving the range to a fixed version first. The same thing happens
when I try to add the plugin definitions to <build><plugins> instead.
However, a version range in my dependencies section resolves like a
charm. Could be that I've not understood how plugin lock down should
work, though...

I'm running Maven 2.0.9 on Windows JDK 1.5 through Cygwin. We have set
up Proximity as a corporate proxy and I have followed the guide in the
Sonatype book to configure repositories and mirrors in my settings.

Adding this block to my POM:

<pluginManagement>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-clean-plugin</artifactId>
      <version>[2.2]</version>
    </plugin>
  </plugins>
</pluginManagement>

Produces the output below:

$ mvn clean -N
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Building CORP parent POM
[INFO]    task-segment: [clean]
[INFO] ------------------------------------------------------------------------
Downloading: 
http://corp-server/proximity/repository/external/org/apache/maven/plugins/maven-clean-plugin/[2.2]/maven-clean-plugin-[2.2].pom
Downloading: 
http://corp-server/proximity/repository/public/org/apache/maven/plugins/maven-clean-plugin/[2.2]/maven-clean-plugin-[2.2].pom
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Failed to resolve artifact.

GroupId: org.apache.maven.plugins
ArtifactId: maven-clean-plugin
Version: [2.2]

Reason: Unable to download the artifact from any repository

  org.apache.maven.plugins:maven-clean-plugin:pom:[2.2]

from the specified remote repositories:
  px-external (http://corp-server/proximity/repository/external),
  px-public (http://corp-server/proximity/repository/public)


[INFO] ------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1 second
[INFO] Finished at: Thu Jul 03 16:16:54 CEST 2008
[INFO] Final Memory: 2M/63M
[INFO] ------------------------------------------------------------------------


Any clues?

-- 
- Jan Fredrik Wedén

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to