Holly crap... by not using ${pom.version} that means we are forced to put all of our modules into the dependencyManagement section of our top-level pom... which is crazy. Geronimo's server/trunk has like 130 + modules and growing. Keeping that dependencyManagement section up to date is going to be a maintenance nightmare... which is why we were using <version>${pom.version}</version> for all modules in the project, and only using dependencyManagement for externals.

${pom.version} IMO should always resolve to the <version> in the pom.xml... and no magically timestamp-build muck. If that timestamp- build muck is needed, then a new ${pom.effectiveVersion} (or something) should be added.

Bottom line is that in a project, the modules which are defined within should be used... and it would be a royal PITA to have to define 5x130 lines in the top-level pom to make that happen.

But still, I think that ${pom.version} should *always* resolve to the <version> elements value, not the magically timestamp-build number.

--jason


On Oct 16, 2006, at 12:22 PM, Brian E. Fox wrote:

Yes this is a known "don't do that." I got burned by it recently. See
here: http://jira.codehaus.org/browse/MNG-2486

-----Original Message-----
From: Jason Dillon [mailto:[EMAIL PROTECTED] On Behalf Of Jason
Dillon
Sent: Monday, October 16, 2006 2:27 PM
To: Maven Developers List
Cc: [email protected]
Subject: Re: Maven's snapshot mechanism is horked (Re: Build error - Is
it from svn commit: r463555 -
/geronimo/genesis/trunk/config/project-config/pom.xml?)

I think I have tracked this down... looks like ${pom.version} is getting
resolved to a timestamp version instead of the value it its parents
<version> element.

Is this expected?

If my parent has 1.1-SNAPSHOT, and an intermediate module defines a
dependency using ${pom.version}, should this resolve to 1.1- SNAPSHOT or
to 1.1-<timestamp>-<build> for the current module?

--jason


On Oct 14, 2006, at 6:58 AM, Kenney Westerhof wrote:

The problem below seems to indicate that the local repository contains

an old metadata file.

Running mvn with -U -cpu should fix that (or wait 24 hours and try
again :)).

Another solution is to delete the metadata file from the local
repository.

Btw, how come the original snapshot versions are removed from the
remote repository?
The local metadata file probably contains a reference to the old
snapshot version, but doesn't seem to have it locally, which needs
investigation..

As for the other snapshot errors: Maven 1 legacy repositories don't
contain metadata files. Updating snapshots from them doesn't seem to
work. That's another thing that should be investigated.

I personally never have problems with snapshot versions, so maybe the
use of maven 1 repositories and the removal of snapshots from the
remote repository isn't handled correctly by Maven.

-- Kenney

Jason Dillon wrote:
Folks... maven's handling of *SNAPSHOT artifacts is killing us.
Any idea what is going on... and how we can fix this. Its an ongoing

problem, seems like new timestamp mismatch problems are popping up
quite often now.  I've already removed our direct use of m1 repos to
get around some problems resolving artifacts... but something is
still very broken with maven's SNAPSHOT mechanism.
Any ideas?
--jason
Begin forwarded message:
From: Jason Dillon <[EMAIL PROTECTED]>
Date: October 13, 2006 2:00:50 PM PDT
To: [email protected]
Cc: Jason van Zyl <[EMAIL PROTECTED]>
Subject: Maven's snapshot mechanism is horked (Re: Build error - Is
it from svn commit: r463555 - /geronimo/genesis/trunk/config/
project-config/pom.xml?)

Yes, build genesis locally for now to get around... I'm gonna need
to get the maven peeps to explain wtf is going on... and hopefully
fix maven to not freak out like this.

The metadata for plugin-support is correct... showing the latest
1.1-SNAPSHOT is -23:

<metadata>
  <groupId>org.apache.geronimo.genesis.plugins</groupId>
  <artifactId>plugin-support</artifactId>
  <version>1.1-SNAPSHOT</version>
  <versioning>
    <snapshot>
      <timestamp>20061013.014841</timestamp>
      <buildNumber>23</buildNumber>
    </snapshot>
    <lastUpdated>20061013014947</lastUpdated>
  </versioning>
</metadata>

And -23 is there:

http://people.apache.org/repo/m2-snapshot-repository/org/apache/
geronimo/genesis/plugins/plugin-support/1.1-SNAPSHOT/plugin-
support-1.1-20061013.014841-23.jar
http://people.apache.org/repo/m2-snapshot-repository/org/apache/
geronimo/genesis/plugins/plugin-support/1.1-SNAPSHOT/plugin-
support-1.1-20061013.014841-23.pom

So, Maven *should* be resolving any 1.1-SNAPSHOT of plugin- config to

these files... but...

--jason


On Oct 13, 2006, at 1:50 PM, Joe Bohn wrote:

Prasad and I hit the same problem earlier today.  There must be
something strange going on with the version # where "21" is
being assumed instead of the "23" that is actually in the repo.
I'm hoping that Jason will know what exactly is going on and how to

fix it and I suspect it may be related to one of his changes.

To get around the problem for now you can build genesis locally.
That worked for me.

Joe


Donald Woods wrote:
Having build problems today and wondering if the below genesis
change yesterday is causing it?
Started with a new trunk checkout directory on a SLES10 x86
machine.
Removed the existing .m2 repo.
bootstrap clean ran fine.
bootstrap specs is failing (also tried mvn -U install from
target/external/specs) because the file
version=1.1-20061013.014841-21 is not in the snapshot repo, but
version=1.1-20061013.014841-23 is.
----------------------------------------------------------------- -
------
[ERROR] BUILD ERROR
[INFO]
----------------------------------------------------------------- -
------
[INFO] Failed to resolve artifact.
Missing:
----------
1) org.apache.geronimo.genesis.plugins:plugin-support:jar:1.1-
SNAPSHOT
  Try downloading the file manually from the project website.
  Then, install it using the command:
      mvn install:install-file -
DgroupId=org.apache.geronimo.genesis.plugins -
DartifactId=plugin-support \
          -Dversion=1.1-20061013.014841-21 -Dpackaging=jar -
Dfile=/path/to/file
  Path to dependency:
        1) org.apache.geronimo.genesis.plugins:tools-maven-
plugin:maven-plugin:1.1-20061013.014841-21         2)
org.apache.geronimo.genesis.plugins:plugin-support:jar:
1.1-20061013.014841-21 ----------
1 required artifact is missing.
for artifact:
org.apache.geronimo.genesis.plugins:tools-maven-plugin:maven-
plugin:1.1-20061013.014841-21 from the specified remote
repositories:
  apache.snapshots (http://people.apache.org/repo/m2-snapshot-
repository),
  codehaus-snapshots (http://snapshots.repository.codehaus.org),
  central (http://repo1.maven.org/maven2),
  codehaus (http://repository.codehaus.org),
  apache-snapshots (http://people.apache.org/repo/m2-snapshot-
repository)
[EMAIL PROTECTED] wrote:
Author: jdillon
Date: Thu Oct 12 20:54:00 2006
New Revision: 463555

URL: http://svn.apache.org/viewvc?view=rev&rev=463555
Log:
Add tools profile to enable tools-m-p and m-m-p to all projects

Modified:
    geronimo/genesis/trunk/config/project-config/pom.xml

Modified: geronimo/genesis/trunk/config/project-config/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/genesis/trunk/
config/project-config/pom.xml?
view=diff&rev=463555&r1=463554&r2=463555
================================================================ =
=============
--- geronimo/genesis/trunk/config/project-config/pom.xml
(original)
+++ geronimo/genesis/trunk/config/project-config/pom.xml Thu
Oct 12 20:54:00 2006
@@ -508,6 +508,24 @@
                 <activeByDefault>true</activeByDefault>
             </activation>
         </profile>
+        +        <profile>
+            <id>tools</id>
+
+            <build>
+                <plugins>
+                    <plugin>
+
<groupId>org.apache.geronimo.genesis.plugins</groupId>
+                        <artifactId>tools-maven-plugin</
artifactId>
+                    </plugin>
+
+                    <plugin>
+
<groupId>org.apache.geronimo.genesis.plugins</groupId>
+                        <artifactId>maven-maven-plugin</
artifactId>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
     </profiles>
          <reporting>





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



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



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



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

Reply via email to