(taking to dev) Seems kind of pointless API to me.
> On Jul 29, 2015, at 1:56 PM, Michael Gentry <mgen...@masslight.net> wrote: > > Maybe we should add a Cayenne.getVersion() method? > > > >> On Jul 27, 2015, at 10:41 AM, Mike Kienenberger <mkien...@gmail.com> wrote: >> >> Our jar MANIFEST file also contains: >> >> Bundle-Version: 4.0.0.M2 >> >> But shouldn't we also be supplying this information as >> >> Implementation-Version: 4.0.0.M2 >> >> so it's in a standardized place? >> >> I'd guess that's a simple maven build change -- I know how to do it >> under ant, but not under maven. >> >> >> Once we do that, then we can use the standard java libraries to >> provide the information: >> >> Object object = new CayenneRuntimeException(); >> Package objPackage = object.getClass().getPackage(); >> System.out.println("Implementation Version: " + >> objPackage.getImplementationVersion()); >> >> produces >> >> Implementation Version: 4.0.0.M2 >> >> when I add an Implementation-Version: line to the MANIFEST in >> cayenne-server-4.0.M2.jar >> >> ===== >> Manifest-Version: 1.0 >> + Implementation-Version: 4.0.0.M2 >> Export-Package: org.apache.cayenne;uses:="org.apache.cayenne.reflect,o >> ===== >> >>> On Mon, Jul 27, 2015 at 9:57 AM, Andrus Adamchik <and...@objectstyle.org> >>> wrote: >>> >>>> On Jul 27, 2015, at 4:21 PM, Joe Baldwin <jfbald...@earthlink.net> wrote: >>>> >>>> 1. My goal is to display the version of cayenne server jar I have added to >>>> the project with Cayenne 4.0. >>> >>> As it happens, Project.CURRENT_PROJECT_VERSION (or its 4.0 alternative) is >>> not the same as the version of cayenne server jar. It denotes the version >>> of the XML mapping format, which does not align with the .jar version. >>> >>> If you need the version of the jar, here is another approach. While you are >>> not using Maven, Cayenne is assembled with Maven, so each Cayenne jar has >>> some extra metadata that you get for free. Namely there's a >>> "pom.properties" file that you can read and get the version: >>> >>> Properties props = new Properties(); >>> String path = >>> "META-INF/maven/org.apache.cayenne/cayenne-server/pom.properties"; >>> try(InputStream in : >>> ObjectContext.class.getClassLoader().getResourceAsStream(path)) { >>> props.load(in); >>> } >>> >>> String version = props.getProperty("version"); >>> >>> Andrus >>> >>> >