Mavenで実行可能なJARファイルを作成

概要 本記事では、Mavenで実行可能なJARファイルを簡単にビルドして作成する方法を記載します。ローカルで実行するようなツール等をJavaで作成する際には、JARファイルをコマンドもしくはダブルクリックで実行可能になるので参考にしていただければと思います。 プロジェクトの作成 mvnコマンドでJavaプロジェクトのスケルトンを作成します。 maven-assembly-plugin maven-assembly-pluginは、プロジェクトの出力をその依存関係、モジュール、ドキュメント、およびその他のファイルと共に単一の配布可能なアーカイブにまとめることを可能にします。今回は、JARファイルの形式でアーカイブしたいので、jar-with-dependenciesを指定します。また、<archive>の<manifest>で実行クラスのパスを指定します。追加で<appendAssemblyId>をfalseに設定しています。そうしないと、作成されるjarファイルに-jar-with-dependenciesが最終的な名前に追加されてしまいます。下記をpom.xmlファイルに記載します。 maven-dependency-plugin maven-dependency-pluginのcopy-dependenciesを使用することで、プロジェクトの直接の依存関係とオプションで推移的な依存関係のリストを取得し、それらを指定された場所にコピーします。下記をpom.xmlファイルに記載します。 サンプル Githubに本記事のサンプルを格納しています。cloneして、mvn packageすることでJARファイルを作成できます。https://github.com/yhayashi30/maven-jar-sample 参考 Apache Maven Assembly Pluginhttp://maven.apache.org/plugins/maven-assembly-plugin/Apache Maven Assembly Plugin Usagehttp://maven.apache.org/plugins/maven-assembly-plugin/usage.htmlApache

Continue reading

Spring Boot 2の基礎

概要 本記事は、下記の本を読んでSpring Boot2(その他諸々)について学んだことを簡単に整理したものとなります。整理している内容としては、概念的な部分から細かいTipsまでをピックアップしております。大体、本の目次ごとに整理しております。 Spring Bootとは Spring Frameworkの本体をベースに「Spring MVC」「Spring Roo」「Spring Boot」で構成されている。 「Spring MVC」は、WebアプリのベースでありModel-View-Controllerで構成されいる。 「Spring Roo」は、各種コードの自動生成機能ライブラリ(RubyでいうRailsのようなイメージ)である。 つまり、「Spring Boot」は、「Spring MVC」を土台にして「Spring Roo」を組み合わせて全体をシンプルに使えるように統合したものである。 「Spring Boot」での開発は、正確には「Spring

Continue reading