-bin/実際には大体こちらの通り。
-App.bat: 起動用のバッチファイル
-config/
-各種設定ファイル
-lib/
-作成したJar
-依存しているJar
http://d.hatena.ne.jp/cnaos/20100102/1262430319Jarの作成にはmaven-jar-pluginを、bin, config, libの各ディレクトリの作成とリソースのコピー、batファイルの作成にcodehausのappassembler-maven-pluginを使った。
手順は次の通り。
- appassemblerなどのリファレンスを見ながら、pom.xmlを書く。
- Run As > Maven buildでビルドする(このとき、goalにはpackageを指定する)
- 成果物をみて、期待と違えば再度設定する
最終的にできたpom.xmlは以下の通り。
<build>
<!-- src/main/configはデフォルトではリソースとして登録されていないので、手動で追加
(src/main/resourcesはデフォルトで登録されている) -->
<resources>
<resource>
<directory>${basedir}/src/main/config</directory>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>jp.example.App</mainClass>
<packageName>jp.example</packageName>
</manifest>
</archive>
<!-- 設定ファイルをJarから除外 -->
<excludes>
<exclude>*.properties</exclude>
<exclude>*.xml</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>appassembler-maven-plugin</artifactId>
<version>1.1.1</version>
<configuration>
<programs>
<program>
<mainClass>jp.example.App</mainClass>
<name>App</name>
</program>
</programs>
<!-- repository作成 -->
<repositoryLayout>flat</repositoryLayout>
<repositoryName>lib</repositoryName>
<!-- 設定ファイル -->
<configurationDirectory>config</configurationDirectory>
<copyConfigurationDirectory>true</copyConfigurationDirectory>
<configurationDirectory>config</configurationDirectory>
<!-- コンソールを出すか -->
<showConsoleWindow>true</showConsoleWindow>
</configuration>
<!-- packageフェーズで実行されるようにする -->
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>assemble</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
0 件のコメント:
コメントを投稿