2020年12月4日金曜日

JDK8と11の非互換

 仕事などでは古いJava環境を使っている場合もあり、そんななか、JDK11で8互換でビルドしてJDK8で動かないものがあったのでメモ

 NoSuchMethodError が

java.lang.NoSuchMethodError: java.nio.ByteBuffer.xxxx
と発生。
BufferとByteBufferは実装が変わっているようで、実装されている部分が何かで互換性がなくなっているっぽい。 
コードは互換になるがライブラリまでは見てくれないというJDKの罠はよくある。今回もそんなもののひとつか。
 詳細はこっちかな
 https://stackoverflow.com/questions/61267495/exception-in-thread-main-java-lang-nosuchmethoderror-java-nio-bytebuffer-flip

0 件のコメント:

コメントを投稿

Ryzen 7 5800X CPU変えたら爆速か?

次世代のZen 4が迫ってきてZen 3のRyzen 5000系が値下がってきたので現状のシステム構成のままでゲームに最適らしいシングルダイのRyzen  7 5800X を購入してCPU(とクーラー)だけ差し替えてみることにした。 現状の基本構成 AMD Ryzen 5 260...