Mavenレポジトリからのダウンロード時に使用するSSL証明書の追加手順
Contents
問題
Maven経由で以下のリポジトリから jhdf5 をダウンロードしようとすると、ビルドエラーが発生する
原因
- ファイアウォール:ブラウザで接続できることを確認した
- SSL証明書:今回はこの部分が原因だった
解決手順
1. ダウンロードが失敗するリポジトリで証明書を発行
- ブラウザで該当リポジトリを開く
- 下図のように、
サイト情報を表示
ボタンをクリックサイト情報の表示 この接続は保護されています
をクリックすると以下画面に遷移するので、証明書は有効です
という文言の右側にあるボタン(証明書を表示するボタン)をクリック証明書の表示 - 下図の画面がポップアップウィンドウとして表示されるので、詳細タブから証明書をエクスポート(証明書の拡張子は任意の形式でOK)
証明書のエクスポート
2. JREに同梱されている証明書ストア cacerts にクライアント証明書を発行した認証局の証明書をインポート
- 自分の環境では “C:\Program Files\zulu-8\jre\lib\security” 配下に cacerts が存在するが、コマンド実行時は各自の環境に対応するように読み替えて実行
- 1.4でエクスポートした証明書の拡張子込みの絶対パス
{cert_file_path}
を確認 - 以下コマンドを実行
※ ファイルパスに半角スペースを含む場合、ファイルパスを"“で括るkeytool -import -alias {example} -keystore "C:\Program Files\zulu-8\jre\lib\security\cacerts" -file {cert_file_path}
- パスワードの入力を求められるので、
changeit
と入力 - インポートを実施するか確認されるので、
Y
と入力 - 以下コマンドを実行し、証明書が登録されたことを確認
keytool -list -alias {example} -keystore "C:\Program Files\zulu-8\jre\lib\security\cacerts"