質問: Mavenプロジェクトで開発を行っていますが、以下のことを実現したいのですが可能でしょうか。 1. 基本的に開発中はMavenで依存関係を解決したい 2. 最終的な成果物のjarには、あるライブラリのjarを含めたくない 3. ビルドパスを起動オプションまたは環境変数から追加したい 上記1については通常のMavenの使い方なので可能です。 2については方法を見つけることができませんでした。 3につてもどのようにすればよいのか見当がつきませんでした... 当該アプリケーションがインストールされるPCにはすでに依存関係のあるライブラリがいくつか配置されています。 しかし、PCによってCドライブやDドライブであったりするため、ビルドバスを起動時に変更したいのです。 * OS:Windows * 開発環境:Eclipse * 開発言語:Java * フレームワーク:Spring boot
回答: 2. 最終的な成果物のjarには、あるライブラリのjarを含めたくない コメントにてご教示いただいた通り、pom.xmlのbuildタグ内でexcludes指定する。 また、今回は除外したいライブラリがMavenリポジトリで管理されておらず、ファイルサーバに配置しているjarをpom.xmlでmaven-install-pluginを利用してコピーしていた。 その場合、ターゲットjarにもライブラリが同梱されるが、dependencyタグにsystemPath指定したところ、同梱されないようになった。 3. ビルドパスを起動オプションまたは環境変数から追加したい jarの起動時にjavaコマンドにて-jarオプションで起動していたが、-classpathオプションで起動するようにした。ただし、Spring Bootにおいて、メインクラスはorg.springframework.boot.loader.JarLauncherだった。