【问题标题】:Activator `.sbt.ivy.lock` is not available激活器 `.sbt.ivy.lock` 不可用
【发布时间】:2015-02-05 15:28:47
【问题描述】:

我正在尝试使用激活器为播放项目生成 Eclipse 和 IDEA 项目。当我尝试这样做时,它做了一点,但它挂在:

Waiting for lock on C:\Users\James\.ivy2\.sbt.ivy.lock to be available...

起初我认为我的 Intellij IDEA 运行会话可能会发生冲突,我杀死了 IDEA,问题仍然存在。我关闭了激活器,删除了锁定文件,然后重新启动了激活器,但随后它重新创建了锁定文件并给了我同样的问题。这是我得到的完整日志。

[info] Loading project definition from C:\Users\James\play-java\project
[info] Set current project to play-java (in build file:/C:/Users/James/play-java/)
[info] Applying State transformations com.typesafe.sbtrc.SetupSbtChild from C:/Users/James/.sbt/boot/scala-2.10.2/com.typesafe.sbtrc/sbt-rc-probe-0-13/1.0-1a8f7afd5ba98b45834ff53dd349130c3ade22f1/sbt-rc-probe-0-13-1.0-1a8f7afd5ba98b45834ff53dd349130c3ade22f1.jar;C:/Users/James/.sbt/boot/scala-2.10.2/com.typesafe.sbtrc/sbt-rc-probe-0-13/1.0-1a8f7afd5ba98b45834ff53dd349130c3ade22f1/sbt-rc-props-1.0-1a8f7afd5ba98b45834ff53dd349130c3ade22f1.jar
[info] Updating {file:/C:/Users/James/play-java/}root...
Waiting for lock on C:\Users\James\.ivy2\.sbt.ivy.lock to be available...

如何解决锁文件问题?

【问题讨论】:

    标签: sbt typesafe-activator


    【解决方案1】:

    .sbt.ivy.lock 文件用于在多个进程之间同步对本地 ivy2 存储库的访问,因此它们不能同时修改目录。通常,当您同时运行 IDE 和 Activator/sbt 终端时,会发生您描述的情况。

    即使您终止了 Idea Process,也可能会产生另一个导致锁定的进程,因此下次请确保您终止所有 Java 进程。但是,此问题的最佳解决方案是避免将一个进程与另一个进程锁定。所以只运行一个同时使用 ivy2 存储库的进程。

    【讨论】:

    • 在我的例子中,有一个在后台运行的激活器实例。杀死进程后,我可以使用activator
    • 我关闭了 netbeans,然后激活器继续运行。
    • 谢谢!我杀死了 Intellij 和所有其他 java 进程并只用一个进程重新启动。
    【解决方案2】:

    如果没有任何效果,最后一步是终止 .lock 文件。

    【讨论】:

    • 除了要做什么的模糊声明之外,你如何杀死 .lock 文件?它位于哪里?你如何确定它的位置?您如何确定在您的机器上播放的路径。我现在正在运行 OSX。任何有意义的建议表示赞赏。
    • killall -9 java 会杀死所有java进程。
    • 旧,但想为 zero_cool 留下额外的细节:锁定消息通常包括整个路径:Waiting for lock on /foo/bar/.ivy2/.sbt.ivy.lock to be available ...从那里,只需删除 .sbt.ivy.lock 文件并重试
    • 以防万一它有助于@zero_cool:在我的mac(Sierra)上,它位于/Users//.ivy2/.sbt.ivy.lock
    【解决方案3】:

    我遇到了类似的问题,我也遇到了同样的错误

    Waiting for lock on C:\Users\ajain9\.ivy2\.sbt.ivy.lock to be available...
    

    最后的问题是我的系统上运行了另一个 sbt 进程,因此 .sbt.ivy.lock 文件不可用。正如 Daniel 所解释的那样,锁定文件用于同步目的。

    一旦上一个过程结束,我就没有再遇到这个错误了。

    【讨论】:

      猜你喜欢
      • 2015-12-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多