【问题标题】:Why would my play framework say wait for a .sbt lock to be available?为什么我的游戏框架会说等待 .sbt 锁可用?
【发布时间】:2019-02-23 00:09:54
【问题描述】:
[Sally] $ run

[info] Updating {file:/Users/MyName/Desktop/sally/todolist/}Sally...
Waiting for lock on /Users/MyName/Documents/play-2.1.3/repository/.sbt.ivy.lock to be available...

Sally 是我的项目名称。我正在学习如何使用游戏。昨天一切都很棒。今天,当我醒来打开电脑时,一切都变得糟糕透顶。当我尝试运行该程序时,我一直看到此消息。

这个锁到底是什么?我应该卸载/删除框架并重新安装它吗? (顺便说一句,我该怎么做?)

【问题讨论】:

    标签: playframework-2.0


    【解决方案1】:

    只需删除.lock 文件。它用于解决依赖关系并在您启动两个 Play 控制台时避免冲突。

    【讨论】:

    • 是的!我也有这个问题!那么,如果我有一个游戏项目并且我决定转移到另一个游戏项目怎么办。我只是去那个目录并输入“play”吗?我认为这首先让我陷入了锁定问题。
    • 是的,您可以输入 Play。但是我认为您遇到了问题,因为您在播放过程完成依赖关系解析之前就终止了它。通常,这个问题不应该发生。
    • @nico_ekito 每次我尝试删除 .lock 时,它都会说该文件当前被另一个应用程序(IntelliJ)使用。当我关闭应用程序并删除它工作的文件时。但是,当我再次启动应用程序时,它会自动创建文件/文件夹。有什么建议吗?
    • .lock 文件在哪里?
    【解决方案2】:

    我运行了以下命令来解决这个问题。

    $ ps aux | grep sbt
    

    获取进程 ID 并终止它。(如下所示)

    $ kill -9 112233 565644
    

    然后运行sbt run 启动应用程序。

    【讨论】:

      【解决方案3】:

      删除 .lock 文件也可以。但是如果您不想删除锁定文件,您可以从拥有锁定的进程中解锁文件。如果您使用的是 Windows,则可以使用名为“Unlocker”的 UI 工具来执行此操作(转到该文件=>右键单击=>选择解锁器)。

      【讨论】:

      • MacOS 怎么样?
      • @AabanTariqMurtaza 试试这个:打开终端。键入以下命令,后跟一个空格(暂时不要按 Enter)。 sudo chflags nouchg。将锁定的文件从 Finder 拖到终端窗口以完成其完整文件夹路径。按 Enter 运行命令,并在提示时提供您的密码。
      【解决方案4】:

      在我的 Windows 机器上,我设法通过杀死使用该锁定文件的进程来解决上述问题。

      使用以下微软官方工具搜索正在使用锁定文件的进程。

      https://docs.microsoft.com/en-us/sysinternals/downloads/process-explorer

      【讨论】:

        猜你喜欢
        • 2011-06-25
        • 1970-01-01
        • 1970-01-01
        • 2019-08-08
        • 2014-06-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多