インストルメンテーションを使用して JDK7 でコンパイルされたコードには、既知の互換性の問題があります。http://www.oracle.com/technetwork/java/javase/compatibility-417013.htmlについては
バージョン番号 51 のクラスファイルは、型チェック検証ツールを使用して排他的に検証されるため、メソッドには必要に応じて StackMapTable 属性が必要です。バージョン 50 のクラスファイルの場合、ファイル内のスタックマップが見つからないか正しくない場合、Hotspot JVM は型推論ベリファイアにフェイルオーバーします (そして、フェイルオーバーし続けます)。このフェイルオーバー動作は、バージョン 51 (Java SE 7 のデフォルト バージョン) のクラスファイルでは発生しません。バージョン 51 クラスファイルのバイトコードを変更するツールは、検証に合格するために、バイトコードと一致するようにスタックマップ情報を更新する必要があります。
解決策は、 https-XX:-UseSplitVerifier
://community.oracle.com/blogs/fabriziogiudici/2012/05/07/understanding-subtle-new-behaviours-jdk-7 に要約されているとおり
に使用することです
どのくらい安全ですか?オラクルは何らかの理由でこのチェックを入れていると思います。使用しないと、他の問題が発生する可能性があります。
を使用すると、どのような結果になる可能性があり-XX:-UseSplitVerifier
ますか?
ありがとう、
ピーター。