From no experience to actually building stuff​. The advantages and disadvantages of this approach are: The Apache Maven Assembly Plugin allows users to aggregate the project output along with its dependencies, modules, site documentation, and other files into a single, runnable package. Moreover, the goal for Maven is one-jar. This allows you to have the same classpath in dev and prod and still keep all classes in a single signed jar file. The detailed description is available here. I am trying to generate an executable jar for a small home project called "logmanager" using maven, just like this: How can I create an executable JAR with dependencies using Maven? Second, we need to specify the transformer implementation; we used the standard one in our example. 作成したプロジェクトのpom.xmlのあるディレクトリで、次のコマンドを実行してください。, すると、mavenがガリガリと動いて、targetディレクトリにjarファイルが生成されているはずです。 Another option to create executable jar is the One Jar project. Why not register and get more from Qiita? この記事では、Eclipseを使用し、Mavenの基本的な使い方は理解している前提で話を進めます。 In this quick article we'll focus on packaging a Maven project into an executable Jar file. The main goal in the assembly plugin is the single goal – used to create all assemblies (all other goals are deprecated and will be removed in a future release). We just need to create Maven Java project, and have at least one class with the main(…) method. The high level overview of all the articles on the site. その場合は、コンソールアプリケーションだと厳しいですが・・・, 話はそれますが、javaを使用したGUIプログラムを作る方法も、そのうち記事にしようと思っているので、興味のある方は首を長くしてお待ちください。, ここからは本題の、Mavenを使って実行可能jarをビルドする方法をご紹介します。 いろんなところに散らばっている技術的ノウハウを、勉強したついでに集めて記載していきます。 But without dependencies and inside META-INF/MANIFEST.MF won't be specified Main-Class. Learn how to use a BOM, Bill of Materials, in your Spring Maven project. THE unique Spring Security education if you’re working with Java today. Finally, we need to specify the main class of our application. This provides custom classloader that knows how to load classes and resources from jars inside an archive, instead of from jars in the filesystem. 少しでも、mavenを使いたい、または使わざるを得ないけど使い方がわからない・・・というような方のお役にたてれば幸いです。, tarosa0001です。 Quick tutorial showing you where Maven stores its local repo and how to change that. Javaプログラムをコマンドラインから実行するには、依存するライブラリを全てまとめて実行可能なjarファイル(Executable jar)を作るのが便利です。 実行可能なjarファイルはMaven Assembly Pluginを使って作成できます。 How to test? To avoid errors, please check that your dependency for Servlets has scope set as provided, otherwise, there will be a conflict at the runtime of executable jar: In this article, we described many ways of creating an executable jar with various Maven plugins. A quick and practical guide to building and managing Java projects using Apache Maven. Now we can start using the various solutions. To run. Usually, when creating a jar file, we want to execute it easily, without using the IDE; to that end, we'll discuss the configuration and pros/cons of using each of these approaches for creating the executable. For more details on this topic, please read Create a Fat Jar App with Spring Boot. 「Mavenって聞いたことはあるけど、なんなのかはよーわからん」というような方は、別の記事でMavenをある程度使えるようなってから続きをご覧ください。, Eclipseでも、Mavenの駒野でも、どちらでもよいのですが、とりあえずMavenプロジェクトを作成します。 すこし前にMavenという壁にぶち当たり、Mavenってそもそものなんだというところから、実行可能jarファイルをビルドするところまでを勉強しました。 今回は、その時勉強したことの備忘録を兼ね、いろんなところからかき集めた実行可能jarをもっともシンプルに作る方法をご紹介します。 他にもっと簡単にできる方法をご存じだという方は、ご指摘などいただけると幸いです。 Mavenの基本的な使い方は、別に記事を書きましたので、よろしければそちらもご覧ください。 Let's start with a manual approach – with the help of the maven-dependency-plugin. Tools used : Maven 3.1.1 JDK 1.7 log4j 1.2.17 Joda-time 2.5 Eclipse 4.3 1. To use it we need to use at least Maven version 3.2. To build a jar, run man package, which will result in creating webapp.jar in your target directory. Make this jar executable --> org.apache.maven.plugins maven-jar-plugin