JDK的差別
首先,我目前使用的是1.8的JDK,之前 一直使用的是Oracle官網的1.8,解決M1晶片的思路是,不再使用Oracle的JDK。
oracle: 各個jdk版本的下載下傳位址
azul: azul官網
azul JDK 在oracle JDK基礎之上,支援M1晶片。
報錯問題
非M1晶片的解決方案
windows解決方案
- 首先先根據你本機環境變量的位置,找到以下檔案 【java本機位置】/java/jdk/jre/lib/security/java.security
- 推薦使用【sublime text】打開,搜尋”jdk.tls“,找到下邊的地方。
-
将以下内容粘貼到這個地方
備注删掉了【 TLSv1、TLSv1.1、3DES_EDE_CBC】
jdk.tls.disabledAlgorithms=SSLv3, RC4, DES, MD5withRSA, \
DH keySize < 1024, EC keySize < 224, anon, NULL, \
include jdk.disabled.namedCurves
macOS intel晶片解決方案
- 輸入 指令查找 本機jdk的安裝位址。
/usr/libexec/java_home -V
- 打開【訪達】使用前往功能,通過快捷鍵 ⌘+⇧+G,将上邊的位址粘貼,進入檔案後依次點選 /jre/lib/security/java.security
3. 通過編輯檔案修改 jdk.tls.disabledAlgorithms,和以上windows修改方式一樣
jdk.tls.disabledAlgorithms=SSLv3, RC4, DES, MD5withRSA, \
DH keySize < 1024, EC keySize < 224, anon, NULL, \
include jdk.disabled.namedCurves
macOS M1晶片解決方案
已經安裝oracleJDK,先解除安裝
如果已經安裝了JDK那隻能先進行解除安裝操作。
oracleJDK安裝以後主要存在以下目錄
/Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
/Library/PreferencesPanes/JavaControlPanel.prefPane
/Library/Application Support/Oracle/Java
隻需要通過⌘+⇧+G依次進入目錄将其删掉就可以,安裝适用于M1晶片的JDK方法如下
沒有安裝oracleJDK,安裝azul zuluJDk
首先進入: 官網下載下傳頁
下載下傳後正常安裝即可
安裝後檢視jdk版本
但是這樣依舊存在jar指令啟動報錯【The server selected protocol version TLS10 is not accepted by client preferences [TLS12]】問題。
方法還是,找到java.security
jdk.tls.disabledAlgorithms=SSLv3, RC4, DES, MD5withRSA, \
DH keySize < 1024, EC keySize < 224, anon, NULL, \
include jdk.disabled.namedCurves
linux解決方案
有了以上的解決方法,可以看到,隻要找到java的安裝目錄即可,是以下邊提供了查找linux的java安裝目錄的方法
可使用以下指令查找,親測可用
which java
結果:/bin/java
ls -lrt /bin/java
結果:lrwxrwxrwx 1 root root 22 10月 11 15:53 /bin/java -> /etc/alternatives/java
ls -lrt /etc/alternatives/java
結果:lrwxrwxrwx 1 root root 73 10月 11 15:53 /etc/alternatives/java -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.345.b01-1.el7_9.x86_64/jre/bin/java
則加粗部分為java的安裝目錄
以下便是各平台面對這個問題的解決方案了,完結,撒花。