Jamming doc store

I'm noob.

java1.6のシステムをjava1.8にアップデート

物理サーバのサポート切れに伴い、同サーバに乗せているjavaのアップデートを実施するように強要されています。影響を確認するため、java1.8+tomcat8でコンパイルしました。その結果、勉強になったのでメモとして残します。 

 

以下の3点で影響を確認する 

  • java1.8でソースコードコンパイルして確認する
  • アプリの主要機能をtomcat8で動かして稼働するか確認する
  • 公式の互換性ガイドを確認する

 

まずコンパイル

jdk1.8(8u45)、tomcat(8.0.21)をインストして、コンパイルしたところ

java部分は問題なくコンパイルできました。 

 

画面から動作確認

一部、Seasar2で動かしているアプリのjsp部分で実行時例外が出ました。バージョン差異による、既知の問題らしく。(問題点は以下で言及されている2件でした)

 

d.hatena.ne.jp 

 

互換性ガイドの確認(Oracleの情報を確認)

公式に互換性ガイドが公開されていて、過去バージョンからの差異を確認する

  1. java6→7の互換性ガイド

    Java SE 7 and JDK 7 Compatibility

  2. java7→8の互換性ガイ

    JDK 8の互換性ガイド

 

主要機能も問題なく動いていて、大きな影響を受けておらず、一安心しています。 しかし、これらを確認しても、結局は全機能のテストが必要ですしアップデートって大変な作業ですね。。。そういえば、DBもメジャーバージョンを上げるため、その影響も確認する必要がありました。

 

必ずユニットテストを作るようになりましたが 、そうしていなかった頃に開発していたアプリは、このような全機能の稼働を確認する時、本当に大変ですね。改めて自動テストの重要性を感じました。

 

java1.4からjava1.6に変えた時は、特定の処理にかかるプログラムの実行時間が1/2になったり 、VisualVMなど強力なツールが使えるようになったり、進化を実感できていました。今回もアップデートによって変わること、可能になることをしっかり確認したいと思います。

 

最近、phantom2を持ち歩いていると、人様から不審な目で見られている気がします。。ドローンに対する世間のイメージが悪くなっていると理解してますが、国内の知名度も上がり、来月には新型も発売される、など盛り上がりのタイミングで後ろ向きなニュースが報道されているのは、ちょっとだけ悲しいですね。