升级 0.13.9 -> 1.1.2 后,SBT 未将依赖项下载到 ivy 缓存
SBT is not downloading dependencies to ivy cache after upgrade 0.13.9 -> 1.1.2
我有一个具有以下解析器定义的 SBT 项目:
resolvers += Resolver.mavenLocal
resolvers += Resolver.url("my-release", url("https://myrepo.net/artifactory/libs-release"))
resolvers += Resolver.url("my-snapshot", url("https://myrepo.net/artifactory/libs-snapshot-local"))
(我更改了我公司的回购网址)。
SBT 0.13.9 能够从指定的存储库(包括 maven 本地)解析我公司的工件,但是当我尝试升级到 1.1.2 时,它似乎只能解析已经下载到本地的工件常春藤缓存。未找到新工件。这是 运行 sbt update
命令的部分输出:
[warn] module not found: com.mycompany.artifact#my-artifact;1.2.3
[warn] ==== local: tried
[warn] ==== public: tried
[warn] ==== local-preloaded-ivy: tried
[warn] ==== local-preloaded: tried
[warn] ==== Maven2 Local: tried
[warn] ==== my-release: tried
[warn] ==== my-snapshot: tried
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: UNRESOLVED DEPENDENCIES ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: com.mycompany.artifact#my-artifact;1.2.3: not found
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
所以它似乎检查了我的回购协议,但仍然找不到工件。
作为解决方法,我可以做的是回滚到 SBT 0.13,至少构建一次项目(0.13 会将丢失的工件添加到 ivy 缓存),然后将版本更改回 1.1.2。
UPDATE:看来对于 Maven 存储库,您需要使用 at
而不是 Resolver.url
:
resolvers += "my-release" at "https://myrepo.net/artifactory/libs-release"
resolvers += "my-snapshot" at "https://myrepo.net/artifactory/libs-snapshot-local"
这样就可以正常工作了。
看来对于 Maven 存储库,您需要使用 at
而不是 Resolver.url
:
resolvers += "my-release" at "https://myrepo.net/artifactory/libs-release"
resolvers += "my-snapshot" at "https://myrepo.net/artifactory/libs-snapshot-local"
这样就可以正常工作了。
我有一个具有以下解析器定义的 SBT 项目:
resolvers += Resolver.mavenLocal
resolvers += Resolver.url("my-release", url("https://myrepo.net/artifactory/libs-release"))
resolvers += Resolver.url("my-snapshot", url("https://myrepo.net/artifactory/libs-snapshot-local"))
(我更改了我公司的回购网址)。
SBT 0.13.9 能够从指定的存储库(包括 maven 本地)解析我公司的工件,但是当我尝试升级到 1.1.2 时,它似乎只能解析已经下载到本地的工件常春藤缓存。未找到新工件。这是 运行 sbt update
命令的部分输出:
[warn] module not found: com.mycompany.artifact#my-artifact;1.2.3
[warn] ==== local: tried
[warn] ==== public: tried
[warn] ==== local-preloaded-ivy: tried
[warn] ==== local-preloaded: tried
[warn] ==== Maven2 Local: tried
[warn] ==== my-release: tried
[warn] ==== my-snapshot: tried
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: UNRESOLVED DEPENDENCIES ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: com.mycompany.artifact#my-artifact;1.2.3: not found
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
所以它似乎检查了我的回购协议,但仍然找不到工件。
作为解决方法,我可以做的是回滚到 SBT 0.13,至少构建一次项目(0.13 会将丢失的工件添加到 ivy 缓存),然后将版本更改回 1.1.2。
UPDATE:看来对于 Maven 存储库,您需要使用 at
而不是 Resolver.url
:
resolvers += "my-release" at "https://myrepo.net/artifactory/libs-release"
resolvers += "my-snapshot" at "https://myrepo.net/artifactory/libs-snapshot-local"
这样就可以正常工作了。
看来对于 Maven 存储库,您需要使用 at
而不是 Resolver.url
:
resolvers += "my-release" at "https://myrepo.net/artifactory/libs-release"
resolvers += "my-snapshot" at "https://myrepo.net/artifactory/libs-snapshot-local"
这样就可以正常工作了。