请在2024 Clojure 状态调查!分享您的想法。

欢迎!请参阅关于页面以获取更多有关此功能的信息。

+1
tools.deps
重新标记

我从#tools.deps的Slack渠道复制了这个问题

大家好!Clojure会从环境变量中获取MAVEN_OPTS吗?我无法使用keystoreclojure一起工作,但与mvn(直接)一起工作。我需要使用带有自签名公司证书的keystore.jks。我已配置好settings.xml中的凭据,没有问题。Maven默认从.mavenrc或MAVEN_OPTS中获取设置,但我没有在tools.deps源代码中看到任何使用情况。

感谢任何帮助!

2 个回答

+1
0
by

你好。我是一个 mvn 新手。我对 mvn 或 jks 一无所知,但我将尝试了解这些。

在 tools.deps 仓库中,我发现它没有实现任何关于 MAVEN_OPTS 的功能。
https://github.com/clojure/tools.deps.alpha/search?q=MAVEN_OPTS&unscoped_q=MAVEN_OPTS

没有关于密钥库的信息。
https://github.com/clojure/tools.deps.alpha/search?q=keystore&unscoped_q=keystore

看起来 clojure/tools.deps.alpha 使用的是 org.apache.maven.resolver API。
https://github.com/clojure/tools.deps.alpha/blob/master/deps.edn#L4

然后我发现这个仓库。
https://github.com/apache/maven-resolver

这个仓库没有实现任何关于 MAVEN_OPTS 的功能。
https://github.com/apache/maven-resolver/search?q=MAVEN_OPTS&unscoped_q=MAVEN_OPTS

但我找到了一个关于密钥库的实例。

https://github.com/apache/maven-resolver/blob/47edcfe69c4e52ced4cb93d65b7348b5645cdd68/maven-resolver-transport-http/src/test/java/org/eclipse/aether/transport/http/HttpTransporterTest.java#L71

有可能会有效。

clj -J-Djavax.net.ssl.keyStore=my-custom-keystore.jks

可能会工作。
你可以在 deps.edn 中使用 :jvm-opts

:alias {:custom-keystore {:jvm-opts ["-D..."]}}

然后使用 clj -A:custom-keystore:dev:repl ....

by
感谢你的帮助!
我最初尝试添加 :jvm-opts 与别名,但这不起作用。
我发现最简单的方法是将证书添加到 cacerts 中。它有效。
但我认为最好的方法还是支持 MAVEN_OPTS。
...