今天在使用android studio建立簽名檔案的時候出現了如下圖的問題:
此時需要打開CMD,在指令行中輸入上圖中提示的指令:
C:\Users\UserName>keytool -importkeystore -srckeystore E:\Projects\ReleaseRoot\MobileClient\xxx.jks -destkeystore E:\Projects\ReleaseRoot\MobileClient\xxx.jks -deststoretype pkcs12
回車執行,會提示如下錯誤:
keytool 錯誤: java.io.IOException: DerInputStream.getLength(): lengthTag=109, too big.
原因是:需要遷移的檔案和目标檔案的路徑以及檔案名完全一緻導緻的,是以這裡我們需要更改一下,如果需要檔案名相同,那麼需要更改為不同的存儲路徑;如果路徑相同,那麼就需要使用不同的檔案名。我是使用了不同路徑,相同檔案名的方案。再次執行如下指令:
C:\Users\UserName>keytool -importkeystore -srckeystore E:\Projects\ReleaseRoot\MobileClient\xxx.jks -destkeystore E:\Projects\ReleaseRoot\xxx.jks -deststoretype pkcs12
成功建立簽名檔案。
整個操作截圖如下: