JDKを5→6にしたらEclipseでDaoのテストだけエラーになった
事象
Caused by: java.lang.NoClassDefFoundError: Could not initialize class sun.text.normalizer.NormalizerImpl
といわれて、derbyの接続ができない。
http://forums.java.net/jive/message.jspa?messageID=223834
↑に書かれているようにもう一度JDK6、JRE6を入れなおしてみる。
JRE5をアンインストールするときに再起動しろといわれたけどしなかったし、
後で気づいたんだけど、Eclipseのゾンビプロセスが生き残ってたりしたので、
もう一度やり直したほうがいいよね。
やり直したけど...
関係ないな。
解決!
まったく同じパスでEclipseにJRE登録するとだめらしい。
どこかにキャッシュがあるのかな。
JAVA_HOME2というリンクも作ってそっちに切り替えてみたら、テストが通った。
どうも
[ウィンドウ>設定]で、アンインストールしたJREの設定を削除した後、適用ボタンを押さずに、そのまま新しく同じパスにインストールしたJREの設定を追加すると、色々と必要なところが更新されずにエラーになる。
ということっぽい。
はしょりすぎたか。
JAVA_HOME2を追加して、JAVA_HOMEをいったん削除。
TEST⇒OK
JAVA_HOMEを新たに追加して、デフォルト設定。
TEST⇒OK
JAVA_HOME2を削除。
TEST⇒OK
となった。