我正在尝试使用 Gitlab 存储库作为我的依赖项的私有 Maven 存储库。部署过程运行良好(类似于 如此处所述),但更加简化)。
不,我正在尝试添加依赖项,但这似乎不起作用。在 Maven 中,这似乎是可能的(如此处所述)。但在 Gradle 中,仅支持 BasicAuth 或 AWS s3 令牌似乎受支持。
有什么方法可以将自定义标头添加到 Maven 存储库的请求中吗?或者有什么办法可以使用OAuth2-身份验证吗?
如果没有,你能给我一个提示,从哪里开始实施吗?
我能得到的最好的信息是 2 1/2 年前的,它来自 Gradle 核心开发人员:
目前这是不可能的。我们希望有可能支持更多 身份验证方案,但没有计划支持 OAuth2 这次。还有这个 3 年历史的机密
Gradle Git Repo Plugin 但有一个“大”对应物 :
然而,私人 Maven 存储库无法通过标准轻松访问 maven http接口,或者至少我还没弄清楚如何获取 认证权。这个插件只是克隆了后面的存储库 场景并将其用作本地存储库,因此如果您有权限 克隆存储库,您可以访问它。所以基本上你被困住了。
settings.xml
的
server
部分中执行此操作:
<configuration>
<httpHeaders>
<property>
<name>Authorization</name>
<!-- this is for reading environment variables; this config is not in "profile" part so cannot read command line args -->
<value>Bearer ${env.TOKEN}</value>