非法选项:gitlab-ci中带gradle:jdk8的-keycerts for keytool

问题描述 投票:1回答:2

我使用gitlab-ci.yml中的下一个配置:

image: gradle:jdk11
stages:
  - build
  - publish
before_script:
  - wget -P /tmp http://www.some.com/SOME.crt
 - keytool -importcert -trustcacerts -file /tmp/SOME.crt -cacerts -alias "Some" -storepass changeit -noprompt

一切正常。但是我需要将Java版本更改为8。我将配置编辑为image: gradle:jdk8并收到错误消息:

....
Illegal option: -cacerts

我对gitlab的配置了解很差。我如何修复配置以使用image gradle:jdk8?

java continuous-integration gitlab-ci keytool
2个回答
0
投票

keytool -importcert命令确实具有keytool -importcert选项,但我从未见过它与-cacerts结合使用。

文档中确实提到:

-trustcacerts

在cacerts密钥库上操作。此选项等效于“ -cacerts cacerts ”。

如果-keystore path_to_cacerts -storetype type_of_cacerts-keystore选项与-storetype选项一起使用,将报告错误。


0
投票

我在将'keytool import crt转到jks'-cacerts时找到了解决方案:

here

-密钥库必须是默认的Java密钥库位置– $ JAVA_HOME / jre / lib / security / cacerts。它适用于gradle:jdk8。我可以使用这些keytool选项进行构建和发布。此命令将.crt证书添加到默认的Java证书存储中。

© www.soinside.com 2019 - 2024. All rights reserved.