On 18/06/2010, Jörg Schaible <[email protected]> wrote: > Guys, > > since Sebb is going to modify the parent pom, I want also have your opinion > about the current values of the Specification-Version in the manifests. > Currently Maven generates uses the current version of the artifact for > "Specification-Version" and "Implementation-Version" i.e. "<Major>.<Minor>- > SNAPSHOT" in case of a snapshot or "<Major.Minor>" for the standard release. > However, in case of a bugfix release, this version is > "<Major>.<Minor>.<Patch>". The ideal situation would be IMHO that we have > the "Specification-Version" always using "<Major>.<Minor>" while the > "Implementation-Version" should stay the exact version that Maven is using. > > This can be achieved from the parent pom using the build-helper-maven plugin > and a proper configuration of the "archive" configuration element of e.g. > the jar plugin: > > ============= %< ============= > ... > <build> > <pluginManagement> > <plugin> > <groupId>org.codehaus.mojo</groupId> > <artifactId>build-helper-maven-plugin</artifactId> > <version>1.5</version> > <extensions>true</extensions> > </plugin> > <plugin> > <groupId>org.apache.maven.plugins</groupId> > <artifactId>maven-jar-plugin</artifactId> > <version>2.3.1</version> > <configuration> > <archive> > <manifest> > > <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries> > > <addDefaultImplementationEntries>true</addDefaultImplementationEntries> > </manifest> > <manifestEntries> > <Specification-Version>${project.info.majorVersion}. > ${project.info.minorVersion}</Specification-Version> > // other useful additional entries e.g.: > <X-Compile-Source>${java.version.source}</X-Compile-Source> > <X-Compile-Target>${java.version.target}</X-Compile-Target> > <X-Builder>Maven ${maven.version}</X-Builder> > <X-BuildTime>${maven.build.timestamp}</X-BuildTime> > </manifestEntries> > </archive> > </configuration> > </plugin> > ... > </pluginManagement> > ... > <plugins> > <plugin> > <groupId>org.codehaus.mojo</groupId> > <artifactId>build-helper-maven-plugin</artifactId> > <executions> > <execution> > <id>versions</id> > <phase>generate-resources</phase> > <goals> > <goal>maven-version</goal> > <goal>parse-version</goal> > </goals> > <configuration> > <propertyPrefix>project.info</propertyPrefix> > </configuration> > </execution> > </executions> > </plugin> > ... > </plugins> > </build> > ============= %< ============= > > What do you think?
Makes sense to me. --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
