跳到元数据的末尾
转到元数据的开始

概述

Artifactory提供了与sbt的集成,允许您配置它来解析依赖关系,并将构建输出部署到sbt存储库。你所需要做的就是对你的build.sbt配置文件。

配置

局部存储库

本地sbt存储库用作目标,您可以将您的build.sbt脚本。要创建sbt存储库,请设置包类型SBT

SBT包类型

页面内容

远程存储库

一个远程存储库Artifactory中定义的作为在远程URL上管理的注册中心的缓存代理。

从远程存储库请求的工件(如JAR文件)将按需缓存。您可以从远程存储库缓存中删除下载的构件,但是,您不能手动将构件部署到远程SBT存储库。

要定义一个远程sbt存储库来代理远程sbt注册表,请遵循以下步骤:

  1. 管理模块,在存储库|远程,单击“新”。
  2. 在New Repository对话框中,设置包类型SBT,设置库的关键属性中指定远程注册中心的URLURL字段如下所示:
    创建一个新的远程SBT存储库
  3. 点击“保存并完成”

配置远程sbt存储库所需的参数与用于Maven存储库的参数相同。详情请参阅特定类型的基本设置远程存储库

虚拟存储库

Artifactory中定义的虚拟存储库聚合来自本地和远程存储库的包。
这允许您从为虚拟存储库定义的单个URL访问本地托管的jar和远程代理的sbt注册中心。
要定义虚拟sbt存储库,请创建虚拟存储库,设置包类型成为SBT并选择要包含在控件中的底层本地和远程SBT存储库基本设置选项卡。

新增SBT虚拟存储库

单击“Save & Finish”创建存储库。

配置虚拟sbt存储库所需的参数与用于Maven存储库的参数相同。详情请参阅虚拟存储库

配置sbt

要配置sbt以通过Artifactory中定义的sbt存储库解析和部署工件,只需在Tree Browser中选择一个sbt存储库并单击即可帮我介绍。Artifactory将显示您可以在相关sbt文件中使用的代码片段。

帮我做SBT测试

配置代理存储库

要将Artifactory中定义的存储库配置为sbt的代理存储库,请将下面的代码片段添加到您的~ / .sbt /存储库文件(C:\Users\ %用户名% \ .sbt \存储库在Windows上)。

[repository] local my-ivy-proxy-releases: http://:/artifactory//, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier])。[ext] my-maven-proxy-releases: http://:/artifactory//

在哪里<主机>:<端口>是Artifactory运行的主机URL和端口。

例如,如果您在本地机器上的端口8081上运行Artifactory,并且希望通过一个名为sbt-ivy-proxy,并通过一个名为sbt-maven-proxy你可以用:

[repository] local my-ivy-proxy-releases: http://localhost:8081/artifactory/sbt-ivy-proxy/, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier])。[ext] my-maven-proxy-releases: http://localhost:8081/artifactory/sbt-maven-proxy/

分别代理Maven和Ivy存储库

我们建议使用不同的存储库来代理Maven和Ivy存储库,这是在代理Ivy存储库SBT参考手册


要指定忽略在sbt项目中添加的所有解析器,而忽略在存储库配置中配置的解析器,请在sbt启动器脚本中添加以下配置选项:

-Dsbt.override.build.repos = true

您还可以将此设置添加到/usr/local/etc/sbtoptsC:\Program Files (x86)\sbt\conf\sbtopts在Windows上)

有关sbt代理存储库的更多详细信息,请参考代理库SBT参考手册

配置工件解析

要通过Artifactory解析工件,只需将以下代码片段添加到您的build.sbt文件:

resolvers += "Artifactory" at "http://:/ Artifactory //"

在哪里<主机>:<端口>是运行Artifactory的主机URL和端口,而repo-key是解析工件的Artifactory存储库

部署的工件

要将sbt构建构件部署到Artifactory中的存储库,请将以下代码片段添加到您的build.sbt文件。

版本中,添加:

publishTo:= Some("Artifactory Realm" at "http://:/ Artifactory /")凭证+=凭证("Artifactory Realm", "", "", "")

快照,添加:

publishTo:= Some("Artifactory Realm" at "http://:/ Artifactory /;timestamp=" + new java.util.Date().getTime) credentials += Credentials("Artifactory Realm", "", "", "")

在哪里<主机>:<端口>是运行Artifactory的主机URL和端口,而repo-key是要部署工件的Artifactory存储库。


示例项目

使用Artifactory的样例SBT项目可在GitHub并且可以自由分叉。





  • 没有标签