Hello,
this is not really Mojo specific.
If you build a JAR with maven you can
include the build number or version with filtered resources, filtering
the source code, as a expanded Variable in the Manifest header or by
copy of META-INF/maven/pom.properties. To any of those information you
can then reference to print it out.
This is an example I use (you need to use a class of your project and
add maven group and artifactID):
/** Read program version from Manifest or maven properties. */
private static String getVersion()
{
Class me = MyClass.class;
Package jarPackage = me.getPackage();
if (jarPackage != null)
{
String version = jarPackage.getImplementationVersion();
if (version != null)
{
return version;
}
}
InputStream in =
me.getClassLoader().getResourceAsStream("META-INF/maven/groupID/artifactID/pom.properties");
if (in == null) { return "UNKNOWN";}
try
{
Properties p = new Properties();
p.load(in);
return p.getProperty("version", "UNKNOWN");
}
catch (Exception ignored)
{
return "UNKNOWN";
}
finally
{
try { in.close(); } catch (Exception ignored) { /* ignored
*/ } }
}
Greetings
Bernd
Am Wed, 14 May 2014 07:41:27 -0700
(PDT) schrieb DenisDasKind <[email protected]>:
> Hi,
>
> i'm new to maven, and now i have the following problem. I have a
> custom Mojo, and the Mojo should print the own version stored in the
> pom.xml of this mojo. And now i have trouble to get this version. I
> have tried the project.version, but this is always the version of the
> pom, that calls my Mojo. A easy way, will be when the version is
> hardcoded, but this is not the best way, becausae each time when the
> version is changed (release) i must change it manually.
> Is there a better way to get this version?
>
> Thank you in advance!
>
>
>
> --
> View this message in context:
> http://maven.40175.n5.nabble.com/Version-in-Mojo-tp5793054.html Sent
> from the Maven - Users mailing list archive at Nabble.com.
>
> ---------------------------------------------------------------------
> 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]