Webアプリケーションの開発 (4/5)
作成:2017-10-21 10:10
更新:2017-10-21 10:10
更新:2017-10-21 10:10
■build.gradleを記述する
では、Webアプリケーションのためのbuild.gradleを作成しましょう。今回は、通常のJavaアプリケーションとはいろいと違っている部分があります。まずは、下のリスト欄に全ソースコードを掲載しておきます。
とりあえず、全コードを記述したら、実際に動かしてみましょう。まず、以下のようにコマンドを実行して下さい。
これは、WebアプリケーションをWarファイルにまとめるためのものです。実行後、プロジェクト内の「build」フォルダ内にある「libs」フォルダを開いて下さい。ここに「GradleWebApp.war」という名前でWarファイルが作成されます。
続いて、アプリケーションの動作チェックをしましょう。以下のように実行をして下さい。
これで、Jettyがダウンロードされ、その場で起動します。起動したら、以下のアドレスにアクセスをしてみて下さい。サーブレットにアクセスし画面が表示されますよ。
では、build.gradleの内容をチェックしていきましょう。まずは、プラグイン関係です。ここでは、3つのプラグインが用意されています。
最初の「java」は既におなじみで説明の要はありませんね。JavaプログラムのためのcompileJavaなどのタスクを提供するプラグインでしたね。
「war」プラグインは、名前の通り、warファイルでパッケージ化するためのプラグインです。これは、Webアプリケーションでは必須のプラグインといって良いでしょう。先ほどの「gradle war」は、このプラグインに寄るものです。
もう1つの「gretty」は、Jettyサーブレットコンテナを利用するためのプラグインです。このGrettyは、GroovyからJettyを利用するためのもので、先ほどの「gradle run」によってJettyが起動し、このWebアプリケーションが公開されたのです。
とりあえず、全コードを記述したら、実際に動かしてみましょう。まず、以下のようにコマンドを実行して下さい。
gradle war
これは、WebアプリケーションをWarファイルにまとめるためのものです。実行後、プロジェクト内の「build」フォルダ内にある「libs」フォルダを開いて下さい。ここに「GradleWebApp.war」という名前でWarファイルが作成されます。
続いて、アプリケーションの動作チェックをしましょう。以下のように実行をして下さい。
gradle run
これで、Jettyがダウンロードされ、その場で起動します。起動したら、以下のアドレスにアクセスをしてみて下さい。サーブレットにアクセスし画面が表示されますよ。
http://localhost:8080/GradleWebApp/hello
■使用プラグインについて
では、build.gradleの内容をチェックしていきましょう。まずは、プラグイン関係です。ここでは、3つのプラグインが用意されています。
apply plugin: 'java'
apply plugin: 'war'
apply plugin: 'gretty'
最初の「java」は既におなじみで説明の要はありませんね。JavaプログラムのためのcompileJavaなどのタスクを提供するプラグインでしたね。
「war」プラグインは、名前の通り、warファイルでパッケージ化するためのプラグインです。これは、Webアプリケーションでは必須のプラグインといって良いでしょう。先ほどの「gradle war」は、このプラグインに寄るものです。
もう1つの「gretty」は、Jettyサーブレットコンテナを利用するためのプラグインです。このGrettyは、GroovyからJettyを利用するためのもので、先ほどの「gradle run」によってJettyが起動し、このWebアプリケーションが公開されたのです。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
apply plugin: 'java' apply plugin: 'war' apply plugin: 'gretty' buildscript { repositories { jcenter() } dependencies { classpath group:'org.akhikhl.gretty', name:'gretty-plugin', version:'+' } } repositories { jcenter() } dependencies { testCompile group:'junit', name:'junit', version:'4.12' }
※関連コンテンツ