Java7でコンパイルされたコードで静的テストを偽装する際に問題が発生します。Java7の構造で静的メソッドをモックするとPowerMockの問題が発生する
私は中ならば、それは
java.lang.VerifyError: JVMVRFY012 stack shape inconsistent [...]
を返す私のテストを実行している場合は、注釈
@RunWith(PowerMockRunner.class)
@PrepareForTest(StaticClassToMock.class)
と私のJUnitテストに注釈を付けると
PowerMockito.mockStatic(StaticClassToMock.class);
と私の静的クラスをモックしようとしていますStaticClassToMock私はJava7のコンストラクトを、ORにキャッチされた例外を置き換えて削除します。カスケードで裾がうまく動作します。
私は、Powemock(1.6.6)の最後のバージョンがJava6でコンパイルされていることを知りました。
はPowerMockがJava6のしてコンパイルされたときに構築Java7に関連する私の問題ですか?その奇妙なエラーを歓迎 - PowerMockとの事です
おかげ
ありがとうGhostCat、私は完全に静的コードとIBM JDKについてのあなたの点について同意します。 残念ながら、IBMコードを拡張していて、既存のコードを変更する方法はありません。 とにかく私はこのことを解決することができました。それはoldjavassistライブラリが原因でした。それを新しいものにアップグレードすると、私の問題が解決しました。どうもありがとう! – flavio
あなたは大歓迎です。あなたのアップデートにも感謝します! – GhostCat