기본 Java 설치의 cacerts 위치를 얻으려면 어떻게 해야 합니까?
이 를 알 수 있을까 하고 있습니다.cacerts설치의 가 JAVA_HOME ★★★★★★★★★★★★★★★★★」JRE_HOME정의되어 있습니다.
적어도 다음 문제에서 효과가 있는 솔루션이 필요합니다.OS X ★★★★★★★★★★★★★★★★★」Linux.
ㅇㅇ.java -v는 동작하는 로 하고 있습니다 : )는 동작하고 있습니다.
리눅스에서 다음 위치를 찾으려면$JAVA_HOME:
readlink -f /usr/bin/java | sed "s:bin/java::"
cacerts에 있다lib/security/cacerts:
$(readlink -f /usr/bin/java | sed "s:bin/java::")lib/security/cacerts
mac OS X에서 찾으려면$JAVA_HOME 삭제:
/usr/libexec/java_home
cacerts에 있다Home/lib/security/cacerts:
$(/usr/libexec/java_home)/lib/security/cacerts
업데이트(OS X와 JDK)
위의 코드는 JDK가 설치되지 않은 컴퓨터에서 테스트되었습니다.pR0Ps가 말한 것처럼 JDK가 설치되어 있는 경우,
$(/usr/libexec/java_home)/jre/lib/security/cacerts
X X 10.10.1(요세미티)의 ,cacerts이 일일파파파파파로 변경되었습니다.
$(/usr/libexec/java_home)/jre/lib/security/cacerts
이러한 증명서에 프로그래밍 방식으로 액세스해야 하는 경우 파일을 전혀 사용하지 않고 신뢰 관리자를 통해 액세스하는 것이 가장 좋습니다.다음 코드는 OpenJDK 테스트 케이스(빌트된 cacerts 컬렉션이 비어 있지 않은지 확인)의 코드입니다.
TrustManagerFactory trustManagerFactory =
TrustManagerFactory.getInstance("PKIX");
trustManagerFactory.init((KeyStore) null);
TrustManager[] trustManagers =
trustManagerFactory.getTrustManagers();
X509TrustManager trustManager =
(X509TrustManager) trustManagers[0];
X509Certificate[] acceptedIssuers =
trustManager.getAcceptedIssuers();
따라서 파일 위치나 키스토어 암호를 처리할 필요가 없습니다.
MacOS Mojave의 위치는 다음과 같습니다.
/Library/Java/JavaVirtualMachines/jdk1.8.0_192.jdk/Contents/Home/jre/lib/security/cacerts
sdkman을 사용하여 Java 버전을 관리하는 경우 cacerts는
~/.sdkman/candidates/java/current/jre/lib/security
★★★의 Java 9 다음으로는 그, onwards, 은, onwards, 것에.
${JAVA_HOME}/lib/security/cacerts
때와
${JAVA_HOME}/jre/lib/security/cacerts
하이 시에라에서는 cacerts는 다음 위치에 있습니다./Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/jre/lib/security/cacerts
Ubuntu 20.04.3 LTS에서는 캐셔트는 다음 위치에 있습니다./etc/ssl/certs/java/cacerts
$ java --version
openjdk 11.0.11 2021-04-20
OpenJDK Runtime Environment (build 11.0.11+9-Ubuntu-0ubuntu2.20.04)
OpenJDK 64-Bit Server VM (build 11.0.11+9-Ubuntu-0ubuntu2.20.04, mixed mode, sharing)
$ ls -lah /usr/lib/jvm/java-11-openjdk-amd64/lib/security/cacerts*
/usr/lib/jvm/java-11-openjdk-amd64/lib/security/cacerts -> /etc/ssl/certs/java/cacerts
"readlink -f " 를 .which java단, 래퍼에서는 하지 않을 수 .", "이러한 래퍼에서는 동작하지 않을 수 있습니다.Java java java java java java java java java java java java java java java java java java.
언급URL : https://stackoverflow.com/questions/11936685/how-to-obtain-the-location-of-cacerts-of-the-default-java-installation
'programing' 카테고리의 다른 글
| Node.js에서 스택 트레이스를 인쇄하는 방법 (0) | 2022.12.30 |
|---|---|
| Python 클래스의 문자열 표현을 변경하려면 어떻게 해야 합니까? (0) | 2022.12.30 |
| 내장 오픈 기능에서의 모드 a, a+, w, w+, r+의 차이는 무엇입니까? (0) | 2022.12.30 |
| phpexcel을 사용하여 데이터를 읽고 데이터베이스에 삽입하려면 어떻게 해야 합니까? (0) | 2022.12.20 |
| 업데이트 후 MariaDB를 시작할 수 없음: [경고] 테스트 파일 /home/mysql/beta.lower-test를 생성할 수 없습니다. (0) | 2022.12.20 |