2017-05-08 5 views
0

私はかなり多くを見回しましたが、私はこの質問に対してまっすぐ答えを見つけることはできません。 Gradleの 'war'プラグインはSpringフレームワークをいつ、どのように呼び出すべきかを知っていますか?例えばGradle 'war'プラグインはSpring Frameworkを呼び出す方法をどのように知っていますか?

は、(例えばhereなど)プロジェクトをコンパイルするwarプラグインタスクを使用する場合、どの時点でスプリングフレームワークは、適切にコンパイルされたサーブレットを生成する@Controller@RequestMapping注釈を処理するために呼び出されますか? GradleはSpring Frameworkを認識するために配線されていますか?

ありがとうございました!

+1

warプラグインは、クラスファイルを展開可能なWebアーカイブにパッケージ化します。 Webプロバイダ(Tomcat)から解凍され、その時点でさまざまなプロパティとXMLファイルが呼び出されます。 – Compass

答えて

2

通常、実行時に、クラスパススキャンまたは@Configuration beans経由で発生します。注釈プロセッサは存在しますが、Springの注釈を他のSpringの設定システムであるXML設定ファイルに変換できる人はいません。

例では、AbstractAnnotationConfigDispatcherServletInitializerに拡張されたクラスは、そのコンテナが最初にWARを読み取るため、Servlet 3.0+コンテナ(この場合はjetty)によって自動検出されます。

そのServletInitializerは、提供されたクラスをルートとして使用してSpringをスピンアップします。 Springはすべての注釈をチェックし、EnvironmentとすべてのBeanを構築します。

ご覧のとおり、これはGradleやその他のビルドシステムとは関係ありません。

関連する問題