JDK17與Hbase client的兼容性問題

最近有1個項目升級到JDK17,裏面用到了hbase-client(版本:以1.2.0-cdh5.7.1爲基礎,公司的大數據同學內部做了一些二次開發 ),啓動時發現一直連不上集羣,直接報錯了,上hbase 官網看了下:

別說JDK 17了,連JDK11都支持不完善,難道把JDK版本又降回去?有點不甘心,又搜索了一些資料,找到了幾篇文檔:

https://issues.apache.org/jira/browse/HBASE-26046

https://issues.apache.org/jira/browse/HBASE-22972

https://toutiao.io/posts/e02mgpc/preview

發現有人在高版本JDK上運行成功了,按第1篇文檔的做法,先嚐試了下:

--add-opens=java.base/java.nio=ALL-UNNAMED
--add-opens=java.base/jdk.internal.misc=ALL-UNNAMED
--add-opens=java.base/sun.nio.ch=ALL-UNNAMED

加上這幾個,當然因爲我的項目裏,還有一些其它功能,要打開的包不止這幾個,最終是這樣的:

--add-opens=java.base/java.lang=ALL-UNNAMED 
--add-opens=java.base/java.lang.reflect=ALL-UNNAMED 
--add-opens=java.base/sun.reflect.annotation=ALL-UNNAMED 
--add-opens=java.base/sun.nio.ch=ALL-UNNAMED 
--add-opens=java.base/java.math=ALL-UNNAMED 
--add-opens=java.base/java.util=ALL-UNNAMED 
--add-opens=java.base/sun.util.calendar=ALL-UNNAMED 
--add-opens=java.base/java.io=ALL-UNNAMED 
--add-opens=java.base/java.net=ALL-UNNAMED 
--add-opens=java.base/java.nio=ALL-UNNAMED 
--add-opens=java.base/jdk.internal.misc=ALL-UNNAMED 
--add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED 

居然跑起來了,呵呵 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章