ついにJavaをやらざるを得なくなってしまった。
Mac環境下で、eclipse + Java 8 + Tomcat 8.5系で、ローカル環境でアプリケーションを動かすまでのメモ。
環境
- iMac 2017 27inch
- macOS High Sierra 10.13.3
ここに、eclipse 4.7.2、Java8系、Tomcat8.5系をインストール。
eclipseのインストールと設定
公式サイト「Eclipse - The Eclipse Foundation open source community website.」から最新版のeclipseをダウンロードしてインストール。日本語化はしない。
で、動かしたいプロジェクトを適当にインポートなりなんなりして追加する。
Emacsキーバインドが使えないとストレスで禿げるので、個人的な趣味で設定変更。
環境設定→General→Keys
よりSchemeをEmacsに変更。ただ、これだけだとC-mとかC-hが使えない。別途ショートカットの割当までしないといけない。C-hはOpen Search Dialogに割り当てられているので、同じくKeysから検索して、Bindingを変更するか削除してやり、新しくDelete PreviousにC-hをBindingする。C-mはMaximize Active View or Editorに割り当てられているので、これも変更するか(自分はCmd-\にした…Atom的に)削除する。ただ、new lineに相当するものが見つけられなかったので、C-mについてはそのままにしている。
参考
Javaのインストールと設定
オラクルのサイト「Java SE Development Kit 8 - Downloads」からJDK 8ダウンロード。もうJava 9が出ているけれど、今回は8(理由は後述)。9をインストールしていても構わない。eclipse側でどのバージョンを使うか設定するので。
eclipseで設定。環境設定→Java→Installed JRE より、Java SE 8を選択。

Java SE 8を選択
設定したらApply and Close。
Tomcatのインストールと設定
Homebrewを使う。tomcatをそのままinstallすると、現在の最新版の9がインストールされるので、@8を指定する。
brew install tomcat@8
.bash_profileに以下を追記してパスを通す。
export PATH="/usr/local/opt/tomcat@8/bin:$PATH"
以下を実行して、tomcatを起動。
brew services start tomcat@8
ブラウザより、localhost:8080にアクセスして、変な猫のうつったページを開いたらOK。
brew services stop tomcat@8
Homebrew便利。
eclipseの設定。メニューバーより、
環境設定→Server→Runtime Environments
AddでApache Tomcat v8.5 を追加。Nextで設定。
directoryは/usr/local/Cellar/tomcat@8.5/8.5.28/libexec。まぁバージョンに合わせて。ディレクトリ名が違うといちいち怒られる。JREはJava SE 8にしておく。

Tomcatの設定
現行最新のTomcat 9も同じようにインストールして設定可能。

Tomcat 8.5と9
終わったらApply and Close。
そうしたら、Serversタブより、Tomcat v8.5 Serverを右クリックしてAdd and Removeより、動かしたいアプリケーションのプロジェクトを追加して、Runまたはデバッグすればよろし。
Java 8の理由
主旨とは関係ないが、Java 9が出ているのにJava 8を使う理由について。
これは現在携わっているプロジェクトがJava 8を利用しているから。最初はJava 9でもいけるかな、と思って環境構築していたのだけれど、鬼のようにエラーが出て挫折。原因は、Java 9からdeprecated扱いで標準クラスパスから外されたJava EE APIの一つJAXB APIを利用していたため。
java実行時に--add-modules java.xml.bindを入れたらとりあえず動く、とか、eclipseの場合はeclipse.iniにその記述を入れる、とかは調べたら出てきたものの、うまくいかず。まぁ素直にJava 8を使うことにした。
以下の情報が参考になった。
コメント