このリンクをたどろうとしています: http://maven.apache.org/plugins/maven-shade-plugin/examples.html
私はMavenが初めてです。例に従おうとすると、少し深みがないように感じます。
Quartz Scheduler を Spring と連携させることができました。jarファイルを使用してコマンドラインから実行できるようにしたい。
これが私が使用したクラスとpomファイルのリストです。
編集:
シェード jar ファイルを取得できます。mvn clean install を使用しました
しかし、コマンドラインから実行しようとすると、次のエラーが発生します。
C:\Users\SpringExample\target>java -jar SpringExample-1.0-SNA
PSHOT-shaded.jar
Exception in thread "main" java.lang.NoClassDefFoundError: org/sonatype/haven/Ex
odusCli
Caused by: java.lang.ClassNotFoundException: org.sonatype.haven.ExodusCli
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
Could not find the main class: org.sonatype.haven.ExodusCli. Program will exit.
EDIT2:
このリンクを使用して、上記の pom で次を使用しました。
http://seanfreitag.wordpress.com/2011/07/25/create-an-executable-jar-with-dependencies-using-maven/
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>1.4</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<manifestEntries>
<Main-Class>org.sonatype.haven.ExodusCli</Main-Class>
<Build-Number>123</Build-Number>
</manifestEntries>
</transformer>
<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>META-INF/spring.handlers</resource>
</transformer>
<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>META-INF/spring.schemas</resource>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
...
</project>