読者です 読者をやめる 読者になる 読者になる

1プロジェクトで起動可能な2つのJARを作る

Mavenプロジェクトで Manifestjava -jar で起動可能な mainメソッドクラスを定義した JAR ファイルを
作る方法の紹介は、以前、ここで書いた。
  http://blog.zaq.ne.jp/oboe2uran/article/1087/

さらに、同じプロジェクトでつまり、1プロジェクトで2個の異なる mainメソッドクラスを定義した JAR ファイルを
作成するにはどうしたらよいか、、、


Maven assembly プラグインだけでなく、もう1つ別のプラグインで同じようにJARを作るプラグインを同じ pom.xml に書いてしまえばよい。

<build>

   <plugins>
      
      <plugin>
         ~~~ ここに、Maven assembly プラグイン で別の JAR 作成の記述 ~~~
      </plugin>


      <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-shade-plugin</artifactId>
         <version>1.2.1</version>

         <executions>
            <execution>
               <phase>package</phase>
               <goals>
                  <goal>shade</goal>
               </goals>

               <configuration>
                  <finalName>sample-${project.version}</finalName>
                  <transformers>
                     <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                        <mainClass>org.sample.SampleMain</mainClass>
                     </transformer>
                  </transformers>
               </configuration>
            </execution>
         </executions>
      </plugin>
   </plugins>

</build>