5

私は Electron アプリを構築しており、npm パッケージ electron-builder を使用して Windows 用のアプリとインストーラーを構築しています。CSC_LINKここで説明されているように、環境変数とCSC_KEY_PASSWORD環境変数を使用してアプリに署名しようとしています: https://github.com/electron-userland/electron-builder#travis-appveyor-and-other-ci-servers

最初に試してみると、エラーとスタック トレースは次のようになります。

Unhandled rejection Error: unable to verify the first certificate
at Error (native)
at TLSSocket.<anonymous> (_tls_wrap.js:1065:38)
at emitNone (events.js:80:13)
at TLSSocket.emit (events.js:179:7)
at TLSSocket._init.ssl.onclienthello.ssl.oncertcb.TLSSocket._finishInit (_tls_wrap.js:593:8)
at TLSWrap.ssl.onclienthello.ssl.oncertcb.ssl.onnewsession.ssl.onhandshakedone (_tls_wrap.js:425:38)
From previous event:
at Object.downloadCertificate (C:\projects\presentation\Electron\node_modules\electron-builder\src\codeSign.ts:97:18)
...

次に、環境変数NODE_TLS_REJECT_UNAUTHORIZED=0を設定しようとしましたが、別のエラーが発生しました。

Unhandled rejection Error: Request error, status 400: Bad Request
at ClientRequest.<anonymous> (C:\projects\presentation\Electron\node_modules\electron-builder\src\httpRequest.ts:36:16)
...

electron-builder で呼び出されている特定の行は、httpRequest.tsNode の https モジュールを使用しているように見えます: https.request(...) https://github.com/electron-userland/electron-builder/blob/master/src/httpRequest.ts#L28

これにより、Windows マシンまたは証明書に問題があると思われます。これを Windows 10、ノード 5.9.0 で実行しています。

4

2 に答える 2

1

問題の原因は定かではありませんが、ファイルを Dropbox に移動することですべてを機能させることができました。私はまだ設定する必要がNODE_TLS_REJECT_UNAUTHORIZED=0ありCSC_LINK、引用符なしで設定する必要がありました:

成功: SET CSC_LINK=https://www.dropbox.com/s/path/to/file.p12?dl=1

失敗した: SET CSC_LINK="https://www.dropbox.com/s/path/to/file.p12?dl=1"

electron-builder GitHub の問題に関する議論へのリンクは、https ://github.com/electron-userland/electron-builder/issues/291 にあります。

于 2016-04-06T23:44:05.147 に答える
1

https://github.com/electron-userland/electron-builder/issuesに問題を直接提出して、メンテナーから回答を得ることをお勧めします。私はアクティブな現在のメンテナーであり、SO をチェックしていないため、すぐに回答が得られる可能性は低いです ;)

問題がまだ実際に発生している場合は、問題をファイルしてください:)

于 2016-04-04T07:35:17.103 に答える