首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用SBT和快照依赖项脱机工作

使用SBT和快照依赖项脱机工作
EN

Stack Overflow用户
提问于 2014-06-25 04:04:20
回答 4查看 5.8K关注 0票数 20

在我的任何项目中,我都不能离线使用SBT。现在我正在搬家,我的衣柜服务器托管Nexus线下线了。

因此,running会说:

代码语言:javascript
复制
sbt "set offline := true" run

我得到了其他失踪的副警长:

代码语言:javascript
复制
[error] unresolved dependency: se.hedefalk#lift-utils_3.0_2.10;0.2-SNAPSHOT: not found

对于声明为:

代码语言:javascript
复制
"se.hedefalk"       %% ("lift-utils_"+liftEdition) % ("0.2-SNAPSHOT"),

但我的常春藤缓存中确实有依赖项:

代码语言:javascript
复制
$ ll ~/.ivy2/cache/se.hedefalk/lift-utils_3.0_2.10/
total 32
drwxr-xr-x  8 viktor  staff   272B Mar 14 11:36 ./
drwxr-xr-x  5 viktor  staff   170B Mar  8 10:38 ../
drwxr-xr-x  3 viktor  staff   102B Mar 14 11:36 docs/
-rw-r--r--  1 viktor  staff   4.5K Mar  4 15:54 ivy-0.2-SNAPSHOT.xml
-rw-r--r--  1 viktor  staff   4.0K Mar  4 15:54 ivy-0.2-SNAPSHOT.xml.original
-rw-r--r--  1 viktor  staff   1.8K Mar 14 11:36 ivydata-0.2-SNAPSHOT.properties
drwxr-xr-x  3 viktor  staff   102B Mar  8 10:38 jars/
drwxr-xr-x  3 viktor  staff   102B Mar 14 11:36 srcs/

这还不够吗?那一整套"offline := true“对我来说从来没有什么不同。依赖关系解析似乎以前就发生过。

我现在真的需要让它工作起来。多年来,我一直在这方面遇到问题,但现在我的情况是,我根本无法工作。

这里:http://www.scala-sbt.org/0.13.5/docs/Detailed-Topics/Dependency-Management-Flow.html

我读过

当offline :=为true时,将不会通过解析更新远程快照,即使是明确请求的更新也是如此。这应该有效地支持在不连接到远程存储库的情况下工作。另外,我们也很欣赏可重现的例子。显然,update必须在离线前成功运行。

我可能没有正确理解这一点,但这是不是说我不应该有我有的问题?

我也有同样的问题,使用:

代码语言:javascript
复制
> sbt "skip in update := true" run

使用sbt 0.13.5

编辑:

在我的repo再次在线,解析所有dep,然后将我的wifi设置为离线后,我可以退出sbt,然后运行它。然而,只要运行;重新加载;清理;编译,我又一次被操*。如果我退出,我甚至根本不能启动sbt。例如,在我尝试使用依赖关系树或类似的方法分析依赖关系图之前,项目的依赖关系解析就发生了。这是非常恼人的,即使不是在线的,如果试图理解失败的传递依赖来自哪里。

EN

回答 4

Stack Overflow用户

发布于 2014-07-12 06:08:29

这似乎是一个可怕的技巧,但您可以将您的常春藤缓存指定为常春藤存储库,这样一旦下载了依赖项,就可以从缓存中解析它们。

例如,您的~/.sbt/存储库可能如下所示:

代码语言:javascript
复制
[repositories]
  local
  maven-central
  cache: file://${user.home}/.ivy2/cache, [organisation]/[module]/ivy-[revision].xml, [organisation]/[module]/[type]s/[module]-[revision].[type]

注意:我必须显式地设置常春藤和工件模式。将本地缓存添加到任何其他repos下面,以便首先尝试使用它们。

票数 8
EN

Stack Overflow用户

发布于 2015-04-12 16:52:33

我也不能在一行程序中使用它。

但是如果我启动sbt,然后在sbt中使用set offline := true,它工作得很好。

票数 2
EN

Stack Overflow用户

发布于 2016-09-16 03:16:06

这里有一个维基页面:5月份编辑的https://github.com/sbt/sbt/wiki/User-Stories:--Offline-mode-and-Dependency-Locking,上面说SBT的离线概念不能正常工作。这可能是您的构建即使在设置了offline设置时也继续尝试解析对远程存储库的依赖关系的原因之一。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24395307

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档