3

昨日、3.3.2.Final-SNAPSHOT から最新リリースにアップグレードしようとしました。ただし、次のエラーが原因で Android では失敗します。

  • /AndroidRuntime( 720): 致命的な例外: main E/AndroidRuntime( 720): java.lang.NoClassDefFoundError: java.util.concurrent.LinkedTransferQueue E/AndroidRuntime( 720): org.jboss.netty.util.internal.QueueFactory で。 createQueue(QueueFactory.java:48)

Android (これは 2.3) では、Deflater クラスにフィールド SYNC_FLUSH が含まれているため、DetecationUtil.javaVersion() は 7 を返します。以下は、すべてのフィールド Deflater.getDeclaredFields() です。

04-25 08:08:51.305: I/System.out(25674): [public static final int java.util.zip.Deflater.BEST_COMPRESSION、public static final int java.util.zip.Deflater.BEST_SPEED、public static final int java.util.zip.Deflater.DEFAULT_COMPRESSION、public static final int java.util.zip.Deflater.DEFAULT_STRATEGY、public static final int java.util.zip.Deflater.DEFLATED、public static final int java.util.zip.Deflater .FILTERED、private static final int java.util.zip.Deflater.FINISH、public static final int java.util.zip.Deflater.FULL_FLUSH、public static final int java.util.zip.Deflater.HUFFMAN_ONLY、public static final int java .util.zip.Deflater.NO_COMPRESSION、public static final int java.util.zip.Deflater.NO_FLUSH、private static final [B java.util.zip.Deflater.STUB_INPUT_BUFFER、public static final int java.util.zip.Deflater. SYNC_FLUSH、プライベート [B java.util.zip.Deflater.inputBuffer、プライベート ブール java.util.zip.Deflater.finished、プライベート long java.util.zip.Deflater.streamHandle、プライベート int java.util.zip.Deflater.inLength、プライベート int java.util.zip.Deflater. inRead、プライベート int java.util.zip.Deflater.compressLevel、プライベート int java.util.zip.Deflater.strategy、プライベート int java.util.zip.Deflater.flushParm]

Android プラットフォームで動作するように、これを解決できる他の方法はありますか? 私はそれを調べていません(まだ...)。Android がサポートされるべきプラットフォームである場合、Android 固有のクラスを確認することもできますか?

次のようなものを、DetectionUtil の int javaVersion0() に追加できます。

try {
        Class.forName("android.app.Application");
        return 5;
    } catch (ClassNotFoundException e) {
        //Ignore
    }

敬具/ヨハン・ラスク

4

1 に答える 1

2

netty の問題トラッカーで問題を開いてください。来週リリースされる予定の次のリリースで確実に処理できるようにします。

イシュー トラッカーはこちら [1] を参照してください。

[1] https://github.com/netty/netty/issues

于 2012-04-25T08:45:15.833 に答える