2016-05-13 7 views
2

jarパッケージにJSPでSpringブートを構築しようとしています。私は、プロジェクトをビルドし、私は、このコマンドでそれを実行しSpringブートでスタンドアロンJARパッケージを使用してJSPを処理することは可能ですか

の$ MVNパッケージ

$ます。java -jarターゲット/のmymodule-0.0.1-SNAPSHOT.jarに

が、ときとき、それが正常に動作します私は、ディレクトリをターゲット($のCDターゲット)と-jarのmymodule-0.0.1-SNAPSHOT.jarに

$のJavaを試しに行きますアプリケーションは正常に動作しますが、ブラウザを開いてページを開こうとするとエラーが発生します。「予期しないエラーが発生しました(タイプ=見つからない、ステータス= 404)。 /WEB-INF/jsp/index.jsp」

私はこの質問を見つけましたが、私はそれをしようとしたとき、私は

をしようとすると、それが動作するのはなぜ Is it possible with Spring Boot to serve up JSPs with a JAR packaging

私の質問があり、同じ問題に会いましたの$ます。java -jarターゲット/のmymodule-0.0.1-SNAPSHOT.jarに

と私は

$ CDをしようとすると動作しません。 -jarのmymodule-0.0.1-SNAPSHOT.jarに

$のJavaはどのように私はそれを解決することができ

をターゲット?

EDIT

ありWEB-INFディレクトリがjarファイルまたはターゲットディレクトリにではなく、私はそこにそれを置くときに埋め込まれたのTomcat、春ブーツdoesn't support using JSPs in an executable jar使用している場合、それは

+0

できません... [参照ガイド](http://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-developing-web-applications.html#boot)を参照してください。 -features-jsp-limitation)を使用します。 * "Tomcatのハードコードされたファイルパターンのため、実行可能なjarは動作しません。" *同じ参照ガイドから*。あなたはそれを確実に動作させるために 'war'パッケージを使用しなければなりません。 –

+0

助けになる前に気付かなかったのですが、なぜ私が" $ java -jar target/mymodule-0.0.1-SNAPSHOT 。jar "とdoen'tは、" $ java -jar mymodule-0.0.1-SNAPSHOT.jar "をターゲットから実行すると正しく動作しますか? –

答えて

4

を助けていません。

戦争パッケージングを使用すると、実行可能な戦争が機能し、標準コンテナ(Tomcatを含む)にも展開できます。 Tomcatのハードコードされたファイルパターンのため、実行可能なjarは動作しません。

あなたがjava -jar target/mymodule-0.0.1-SNAPSHOT.jarをしようとすると、JSPは春ブーツは、開発中の便宜のためにドキュメントルートとして設定しsrc/main/webappからのファイルシステム上で利用可能なので、それは動作します。ターゲットディレクトリに移動すると、src/main/webappフォルダは使用できなくなり、JSPは機能しなくなります。

関連する問題