eclipse4.4 + jetty9 でサーブレット開発環境 構築

WindowsOS 64bit環境に全く何もインストールされていない状態からの環境構築をメモります。

JDKをインストールします

jdk-8u11-windows-x64.exeを実行します。
ちなみに、以下からダウンロードしました。
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
Windows x64 155.29 MB jdk-8u11-windows-x64.exe

c:\Program Files\Java\jdk1.8.0_11
にインストールしました。

eclisepをインストールします

eclipse-jee-luna-R-win32-x86_64.zip
をc:\eclipseに展開します。
(c:\program filesなどの空白を含むフォルダにはインストールしないこと。動作不具合の原因になります)

ちなみにJavaEE版をダウンロードしました。
JavaEEとは、エンタープライズ向けのjavaライブラリを含むバージョンのことで
WEBアプリケーションの開発にはJavaEEが必須です。

ダウンロードしたのはこちら。OSや32bitの場合には別途ダウンロードしてください。
https://www.eclipse.org/downloads/
Eclipse IDE for Java EE Developers, 259 MB

続いてeclipseの日本語化を行います。

pleiades_1.5.0.zip
を展開し、c:\eclipseフォルダへ上書き

以下からダウンロードしました
http://sourceforge.jp/projects/mergedoc/downloads/61474/pleiades_1.5.0.zip/
pleiades_1.5.0

c:\eclipse\eclipse.iniの末尾に

を追加

C:\eclipse\eclipse.exe -clean.cmd
を実行。1回だけ。

eclipseを終了。

これでOK

eclipseで利用するJDKのパスを変更

eclipse(c:\eclipse\eclipse.exe)を起動
メニュー>windows>設定>javaで検索>Installed JRE(インストール済みのJRE)」
にて、c:\Program Files\Java\jdk1.8.0_11をデフォルトにする

参考サイト:
http://www.kkaneko.com/rinkou/javaintro/eclipse.html#3
の Eclipse で,インストール済みの JREJDK 1.7.0 に設定

WTPをインストールします

WTPとはeclipseのWEB開発プラグインの集合体です。htmlエディタやxmlエディタなどを同梱します。
必要ないかもしれませんが、インストールしておきます。

eclipseを起動し
メニュー>ヘルプ>新規ソフトウェアインストールを開きます
作業対象に
http://download.eclipse.org/webtools/repository/luna
を入れて、しばらく待ちます。
メインのGridに、3行のプラグインが表示されます。
・WTP3.6.0
・WTP3.6.0パッチ
の2つを選択して、次へ。次へ。といって、完了します。

インストールが完了するまで待ちます。

eclipseの再起動が促されるので、再起動します。

以上です。

Jettyプラグインをインストールします。

前提
Jettyの最新版は ver9 です。
jetty7,8の更新は停止されており、今後のことを考えると ver9を使うべき。
一方、jettyのeclipse対応プラグインはver 8までしか公式には公開されていません。
そこで今回は、非公式のjetty9 plugin for eclipseをインストールします。
若干公式jettyプラグインと操作方法が違いますが、問題なく開発できるので、これでいきます。

手順
eclipseを起動し
メニュー>ヘルプ>新規ソフトウェアインストールを開きます
作業対象に
http://download.eclipse.org/webtools/repository/luna
を入れて、追加ボタンを押します。
jetty-nightlyという名前を付けて追加します。
しばらく待ちます。
メインのGridに、3行のプラグインが表示されます。
すべて選択して、次へ。次へ。といって、完了します。

インストールが完了するまで待ちます。

途中で”署名なしコンテンツを含む...”と警告されますが、OKし続行します。

eclipseの再起動が促されるので、再起動します。

以上です。

サンプルプロジェクトを作って、動作を確認します

eclipseを起動します
メニュー>ファイル>新規>プロジェクト>動的WEBプロジェクト
ターゲットランタイムを”なし”にします
プロジェクト名をDemoServletPrjにします

作成されたプロジェクトをツリーで右クリック>新規>サーブレット
名前をDemoServlet
パッケージをcom.teppi
で完了

作成されたプロジェクトをツリーで右クリック>ビルドパス>ビルドパスの構成>ライブラリ>外部Jarの追加
にて
C:\eclipse\plugins\javax.servlet_3.0.0.v201112011016.jar
を追加
(これをやらないと、import javax.servletがエラーになっていまう)


プロジェクト名右クリック>デバッグデバッグ構成
JettyWebApp>右クリック>新規
DemoServletPrjのJettyWebApp設定が追加される。
Jetty Versionを"Jetty 9.0.0.M3"に変更。

JREタブに移動し、”実行環境”を選択する。
これでeclipseと同じjdk1.8.0でjettyが起動するようになる。

適用。閉じる。

ツールバーの実行ボタンの左、虫ボタン(デバッグ実行。これでないとプレークポイント使えない)を押す

http://localhost:8080/DemoServletPrj/DemoServlet
をブラウザで開く、404にならずに画面がまっしろになるはず。

停止し、DemoServlet.javaのdoGetに以下を記述
PrintWriter out = response.getWriter();
out.write("aiueo");
PrintWriterにカーソルを合わせCtrl+1 で先頭のImportPrintWriterを選択
(これで自動的にuses節にUnitを追加してくれるイメージ)
ソースを保存して、虫ボタンを再度押す
(これでWEBサーバーも再起動され、自動的にビルドも行われる)

http://localhost:8080/JettyPrj/JettyServlet
をブラウザで開く。aiueoと表示される。

以上です