Okay, that seems like what I thought would work. From inside a plugin then plugin.currentVersion does work fine. However, from outside:
<maven:get plugin="maven-ant-plugin" property="plugin.currentVersion" var="version4"/> <maven:get plugin="maven-ant-plugin" property="currentVersion" var="version5"/> <echo message="version4: ${version4}"/> <echo message="version5: ${version5}"/> Neither version is being set. It seems so easy, but hasn't been. Does any one have any pointers to other jelly script I could look at? Eric > -----Original Message----- > From: Brett Porter [mailto:[EMAIL PROTECTED] > Sent: Monday, July 26, 2004 2:44 PM > To: Maven Developers List; [EMAIL PROTECTED] > Subject: Re: How to retrieve currentVersion of installed plugins > > > plugin.currentVersion > > inside the plugin, just like that. Outside, use in conjunction > with maven:get > > Quoting Eric Pugh <[EMAIL PROTECTED]>: > > > Hi all, > > > > I have a report that runs that checks a plugin to see if there are newer > > versions, and if so, tells the user. I then saw the plugin-profile.xml > > stuff in the main maven build, and thought that I could scroll through a > > plugin profile to verify that I have all the plugins needed for > a specific > > project. > > > > This works sorta okay.. Right now, I can do a comparison > between a version > > specified in the plugin:profile , but I can't seem to look up the > > corresponding plugin for my project and get it's currentVersion. > > > > Here are three failed attempts: > > <maven:pluginVar var="testPlugin" plugin='maven-test-plugin' > > property='currentVersion' /> > > <echo message="version > > ${testPlugin.getDependency('junit').getVersion()}"/> > > <echo message="version2 > > > ${pom.getPluginContext('maven-ant-plugin').getVariable('currentVer > sion')}"/> > > <echo message="version3 > > ${pom.getPlugin('maven-ant-plugin').currentVersion}"/> > > > > Below is the full goal I am running. anyone have any pointers > on how to get > > the project for a plugin and lookup it's currentVersion? It seems to me > > that I should be doing something with the pluginContext, but I > can't seem to > > hit the right incantation. > > > > Eric > > > > > > > > <goal name="test-latestversion-all"> > > > > <define:taglib uri="latestversion"> > > <define:jellybean > > name="latestversion" > > className="com.anite.latestversion.LatestVersion" > > method="doExecute" > > /> > > </define:taglib> > > > > <mkdir dir="${maven.build.dir}/lastestversion/"/> > > <x:parse var="plugins" > > xml="http://maven.aniteps.com/docs/plugin-profile.xml" /> > > <x:forEach var="plugin" select="$plugins/plugins/plugin"> > > <j:set var="groupId"><x:expr select="@groupId" /></j:set> > > <j:set var="artifactId"><x:expr select="@artifactId" /></j:set> > > <j:set var="version"><x:expr select="@version" /></j:set> > > <maven:pluginVar var="testPlugin" plugin='maven-test-plugin' > > property='currentVersion' /> > > <echo message="version > > ${testPlugin.getDependency('junit').getVersion()}"/> > > <echo message="version2 > > > ${pom.getPluginContext('maven-ant-plugin').getVariable('currentVer > sion')}"/> > > <echo message="version3 > > ${pom.getPlugin('maven-ant-plugin').currentVersion}"/> > > > > <ant:echo>Testing ${groupId}:${artifactId} version > > ${version}</ant:echo> > > > > <latestversion:latestversion > > var="lv" > > project="${pom}" > > basedir="${maven.docs.dest}" > > groupId="${groupId}" > > artifactId="${artifactId}" > > artifactType="plugin" > > currentVersion="${version}" > > > output="${maven.build.dir}/lastestversion/latestversion-results.xml" > > outputEncoding="${maven.docs.outputencoding}" > > /> > > <j:set var="newerVersionsAsString" > > value="${lv.newerVersionsAsString}"/> > > <j:if test="${!empty(newerVersionsAsString)}"> > > <j:set var="anite.latestversion.result" > value="true"/> > > <ant:fail> > > WARNING: There is a newer version (${lv.newerVersionsAsString}) of the > > ${artifactId} for Maven > > available. You are currently running version ${version}. > > > > Please download and install it by running: > > > > maven > > plugin:download -DgroupId=${groupId} -DartifactId=${artifactId} > -Dversion=${ > > lv.newerVersionsAsString} > > > > </ant:fail> > > </j:if> > > <j:if test="${empty(newerVersionsAsString)}"> > > <j:set var="anite.latestversion.result" value="false"/> > > <ant:echo message="No newer version of plugin found"/> > > </j:if> > > > > </x:forEach> > > > > </goal> > > > > > > --------------------------------------------------------------------- > > 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]