【发布时间】:2017-10-17 11:50:57
【问题描述】:
我需要将 .cer 格式的证书添加到 BKS 密钥库中
这里是这样描述的
接下来我做了,创建一个目录并放入下一个文件:
- keytool.exe
- bcprov-ext-jdk15on-1.46.jar
- Root_CA.cer
接下来打开 Windows PowerShell 并输入这个命令(只是替换到我的数据)
.\keytool -importcert -v -trustcacerts -file "path_to_cert/interm_ca.cer"
-alias IntermediateCA -keystore "path_to_your_app/res/raw/myKeystore.bks"
-provider org.bouncycastle.jce.provider.BouncyCastleProvider
-providerpath "path_to_bouncycastle/bcprov-jdk16-145.jar" -storetype BKS
-storepass mysecret
下一步点击回车,什么也没有发生
也没有错误信息
进入下一行
我做错了什么?
欢迎询问
编辑
如果我在没有.\ 的情况下键入命令 - 唱歌
喜欢这个 keytool -importcert -v -trustcac......... ,所以我得到这个错误
keytool :术语“keytool”未被识别为 cmdlet、函数、脚本文件或可运行程序的名称。检查名称的拼写,或者如果包含路径,请验证路径是否正确 然后再试一次。 在行:1 字符:1 + keytool -importcert -v -trustcacerts -file "C:\Users\alexey.t\Downloa ... + ~~~~~~~ + CategoryInfo : ObjectNotFound: (keytool:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException
建议[3,General]:没有找到命令keytool,但在当前位置确实存在。默认情况下,Windows PowerShell 不会从当前位置加载命令。如果您信任此命令,请键入:“.\keytool”。有关详细信息,请参阅“get-help about_Command_Precedence”。
我也试过这样做
PS C:\> C:\Users\alexey.t\Downloads\ElAl_certificates\keytool -importcert -v -trustcacerts .......
还有这个
PS C:> C:\Users\alexey.t\Downloads\ElAl_certificates\keytool.exe -importcert -v -trustcacerts
什么都没变
【问题讨论】:
-
您是否尝试过使用存储 keytool.exe 的完整路径?例如
C:\temp\keytool.exe -importcert ..............如果你使用.\keytool,这意味着你已经将当前位置设置为keytool.exe的存储位置,否则你必须指定路径。 -
@Manu 添加了问题。能不能看看是不是?
-
你确定它可以从powershell而不是从ADB(developer.android.com/studio/command-line/adb.html)启动吗?您还将此问题标记为 Android。
-
@Manu 是的,我正在使用 Windows PowerShell
-
是的,但您确定您的命令必须从 Powershell 而不是 ADB 启动吗?
标签: java android powershell