Spring Boot アプリケーションをライブラリ化する方法
Spring Boot でコマンドラインアプリケーションを作っていたのですが、急きょ、アプリではなくライブラリにしなければならなくなりました。
開発環境:Eclipse、Windows7
開発言語:Java
フレームワーク:Spring Boot
※以下、xxxxx.jarというのが私が作成したもの。
現在の起動方法
- 起動用batファイルでjavaコマンドを実施(java -cp xxxxx.jar xxx.xxx.MainClass)
- xxxxx.jar起動
変更後の起動方法
- 既存アプリケーションに当該ライブラリの情報を設定(対象ファイル、クラス、メソッド)
- 既存アプリケーションは当該ライブラリをロードして、設定されたクラスとメソッドを実行
Springフレームワークの機能を利用しつつ、このように移行することはできないでしょうか。
今現在、メインクラスのmainメソッドを削除し、executeというメソッドを作成して既存アプリに登録していますが、以下のエラーでうまく起動できていません。
Failed to process import candidates for configuration class [xxx.xxx.MainClass]; nested exception is java.lang.IllegalArgumentException: No auto configuration classes found in META-INF/spring.factories. If you are using a custom packaging, make sure that file is correct.
フレームワークを利用してアプリを作る為の情報は山ほどありますが、フレームワークを利用してライブラリ(mainメソッドが無い)を作る方法はないのでしょうか。
その様なことは一般的にできないのでしょうか。
追記
試行錯誤した結果、上記エラーはなくなりました。
しかし、AutowiredアノテーションによるDIがされません。