荒っぽくメモ:古い掲示板のスレッドからコピペしたので、環境変数名がHUDSONになってるけど変える。
<pom> ... <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <inherited>true</inherited> <configuration> <archive> <manifest> <addDefaultImplementationEntries>true</addDefaultImplementationEntries> <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries> </manifest> <manifestEntries> <Application-Name>${pom.build.finalName}</Application-Name> <Application-Version>${pom.version}</Application-Version> <Iteration-Name>${iteration}</Iteration-Name> <Build-Time>${buildNumber}</Build-Time> <HudsonBuildNumber>${BUILD_NUMBER}</HudsonBuildNumber> <HudsonBuildId>${BUILD_ID}</HudsonBuildId> <HudsonJobName>${JOB_NAME}</HudsonJobName> <HudsonBuildTag>${BUILD_TAG}</HudsonBuildTag> <HudsonExecutorNumber>${EXECUTOR_NUMBER}</HudsonExecutorNumber> <HudsonJavaHome>${JAVA_HOME}</HudsonJavaHome> <HudsonWorkspace>${WORKSPACE}</HudsonWorkspace> <HudsonUrl>${HUDSON_URL}</HudsonUrl> <HudsonSvnRevision>${SVN_REVISION}</HudsonSvnRevision> </manifestEntries> </archive> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-ejb-plugin</artifactId> <inherited>true</inherited> <configuration> <ejbVersion>3.0</ejbVersion> <archive> <manifest> <addDefaultImplementationEntries>true</addDefaultImplementationEntries> <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries> </manifest> <manifestEntries> <Application-Name>${pom.build.finalName}</Application-Name> <Application-Version>${pom.version}</Application-Version> <Iteration-Name>${iteration}</Iteration-Name> <Build-Time>${buildNumber}</Build-Time> <HudsonBuildNumber>${BUILD_NUMBER}</HudsonBuildNumber> <HudsonBuildId>${BUILD_ID}</HudsonBuildId> <HudsonJobName>${JOB_NAME}</HudsonJobName> <HudsonBuildTag>${BUILD_TAG}</HudsonBuildTag> <HudsonExecutorNumber>${EXECUTOR_NUMBER}</HudsonExecutorNumber> <HudsonJavaHome>${JAVA_HOME}</HudsonJavaHome> <HudsonWorkspace>${WORKSPACE}</HudsonWorkspace> <HudsonUrl>${HUDSON_URL}</HudsonUrl> <HudsonSvnRevision>${SVN_REVISION}</HudsonSvnRevision> </manifestEntries> </archive> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <configuration> <archive> <manifest> <addDefaultImplementationEntries>true</addDefaultImplementationEntries> <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries> </manifest> <manifestEntries> <Application-Name>${pom.build.finalName}</Application-Name> <Application-Version>${pom.version}</Application-Version> <Iteration-Name>${iteration}</Iteration-Name> <Build-Time>${buildNumber}</Build-Time> <HudsonBuildNumber>${BUILD_NUMBER}</HudsonBuildNumber> <HudsonBuildId>${BUILD_ID}</HudsonBuildId> <HudsonJobName>${JOB_NAME}</HudsonJobName> <HudsonBuildTag>${BUILD_TAG}</HudsonBuildTag> <HudsonExecutorNumber>${EXECUTOR_NUMBER}</HudsonExecutorNumber> <HudsonJavaHome>${JAVA_HOME}</HudsonJavaHome> <HudsonWorkspace>${WORKSPACE}</HudsonWorkspace> <HudsonUrl>${HUDSON_URL}</HudsonUrl> <HudsonSvnRevision>${SVN_REVISION}</HudsonSvnRevision> </manifestEntries> </archive> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-ear-plugin</artifactId> <inherited>true</inherited> <configuration> <defaultJavaBundleDir>lib/</defaultJavaBundleDir> <archive> <manifest> <addDefaultImplementationEntries>true</addDefaultImplementationEntries> <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries> </manifest> <manifestEntries> <Application-Name>${pom.build.finalName}</Application-Name> <Application-Version>${pom.version}</Application-Version> <Iteration-Name>${iteration}</Iteration-Name> <Build-Time>${buildNumber}</Build-Time> <HudsonBuildNumber>${BUILD_NUMBER}</HudsonBuildNumber> <HudsonBuildId>${BUILD_ID}</HudsonBuildId> <HudsonJobName>${JOB_NAME}</HudsonJobName> <HudsonBuildTag>${BUILD_TAG}</HudsonBuildTag> <HudsonExecutorNumber>${EXECUTOR_NUMBER}</HudsonExecutorNumber> <HudsonJavaHome>${JAVA_HOME}</HudsonJavaHome> <HudsonWorkspace>${WORKSPACE}</HudsonWorkspace> <HudsonUrl>${HUDSON_URL}</HudsonUrl> <HudsonSvnRevision>${SVN_REVISION}</HudsonSvnRevision> </manifestEntries> </archive> </configuration> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>buildnumber-maven-plugin</artifactId> <inherited>true</inherited> <executions> <execution> <phase>validate</phase> <goals> <goal>create</goal> </goals> </execution> </executions> <configuration> <format>{0,date,yyyy-MM-dd HH:mm:ss}</format> <items> <item>timestamp</item> </items> </configuration> </plugin> </plugins> </build> ... </pom>
ちゃんとしたのは、オライリーのJenkins本(日本語版), "5.6.4 ビルド中でのJenkinsの環境変数の利用" 参照。
MANIFEST.MFを読み込むには:
やっぱりビルドNOとか、ビルドに使ったソースコードリビジョン番号とか、見れるとカコイイ。