1

JDK 7 で実行される古いアプリケーションを継承しました。JDK 8 を使用したいのですが、何らかの奇妙な理由で、JDK 8 でビルドするとテストが機能しなくなりました。特定の匿名クラスが見つからないという不平を言い始めます。

java.lang.NoClassDefFoundError: com/some/package/client/widget/SomeClass$1

GWT および JDK 8 で匿名クラスを使用してはならないことをどこかで読みました。それを変更しようとしましたが、それでもクラスが見つからないという不平を言い続けます :-(.

        Collections.sort(objects, new Comparator<ClientObject>() {
        public int compare(ClientObject object1, ClientObject object2) {
                int result = 0;
                if ((object1 != null) && (object2 != null)) {
                    result = object1.getTranslation().compareTo(object2.getTranslation());
                }
                return result;
            }
        });

上記のコード ブロックが原因のようです。しかし、理由がわかりません。また、GWT の新しいバージョンにアップグレードしようとしましたが、テスト中に他の NoClassDefFoundError エラーが発生します。私たちが間違っていることを誰か知っていますか?

テスト ケースには、gwt-test-utils を使用します。

4

0 に答える 0