Webアプリケーションで使用されるもののライブラリであるjarファイルを作成する通常のJavaプロジェクトがあります。それは、瓶を作成するSpring Bootスターターです。シンプルなもの。Springブート実行可能なjarと通常のライブラリjarを作成します
私はこれをスタンドアロンの実行可能なjarファイルとして実行できるようにしたかったのです。だから私はCommandLineRunnerを実装標準Application.javaを書いて、私は私のプラグインにこれを追加します。
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
とプレスト、私のjarファイルが実行可能です。
しかし、そのプラグインはディレクトリ構造を変更して、もはや通常のライブラリjarではなく、私のwebアプリケーションがそのクラスを見つけられないようにします。私のpomでプラグインのエントリを削除すると、webappは正常に動作しますが、jarファイルはもはや実行可能ではありません。
両方を行うことはできますか?そしてもしそうなら、どうですか?
正しいアプローチは、共通のものを別のmavenプロジェクトに移動し、Spring BootとあなたのWebアプリケーションの両方で参照することです。あるいは、Mavenアセンブリプラグインを使用して、2番目のjarアーチファクトを生成することもできます。 – tsolakp