It's SNAPSHOT when resolved from the local repo and timestamped when it comes from the remote. There's a method to get SNAPSHOT, I think it's something like getBaseVersion(). I had to deal with this also in the dependency and enforcer plugins.
-----Original Message----- From: Simone Gianni [mailto:[email protected]] Sent: Sunday, January 18, 2009 11:34 AM To: Maven Developers List Subject: Artifact.getVersion() Hi all, I already posted this on the users list some weeks ago, but got no answer, so I'm asking here. I'm writing a Maven plugin in which I'm using Artifact.getVersion on dependencies. When applied to a dependency which is a snapshot, sometimes the returned version is 0.0.1-SNAPSHOT (which is the version declared both in the dependency in the pom and in the version of the artifact pom), other times it returns the complete snapshot version, like 0.0.1-20090107-etcetc . Since this behavior is not consistent, I think it is related to some kind of "timeout". When the snapshot is timed out (and maven checks the repository for new versions) then getVersion returns the timestamped version, otherwise it returns the 0.0.1-SNAPSHOT version. Since I'm generating some files based on the artifact group, name AND version, this random behavior causes malfunctions. Is there a way to always retrieve either the generic "0.0.1-SNAPSHOT" or the "0.0.1-etcetc" version? I can see a number of getXVersion methods on Artifact, but have no idea which one will remain stable, are them documented somewhere? Thanks in advance, Simone -- Simone Gianni CEO Semeru s.r.l. Apache Committer http://www.simonegianni.it/ --------------------------------------------------------------------- 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]
