等待另一个颤振命令释放启动锁

当我运行我的颤振应用程序,它显示

等待另一个颤振命令释放启动锁

此消息并不能继续。

170234 次浏览

在编辑器中打开颤振项目时也会发生这种情况。关闭编辑器并重新运行该命令

删除该文件:

<YOUR FLUTTER FOLDER>/bin/cache/lockfile

这将释放被占用的锁,并使您能够运行其他命令。

在我的例子中,Terminal中的以下命令有帮助(根据Günter Zöchbauer的评论的建议):

killall -9 dart

在Windows上,在命令提示符或PowerShell窗口中运行以下命令(根据upupming的评论的建议):

taskkill /F /IM dart.exe

(你可以在Windows 在这里中阅读taskkill标志)

退出你的IDE,然后从启动管理器停止所有dart相关文件(如果有的话) 执行
"FLUTTER DIRECTORY"/bin/cache/lockfile < br > 然后删除这个lockfile

我使用Mac和Visual Studio Code,这是什么工作:

关闭你的电脑,并重新打开它。不要使用重启功能。我重新启动了2次,它没有工作。只有关机有效。

PS:我尝试了以下方法:

  1. 删除lockfile;
  2. killall -9 dart运行;
  3. 重启我的电脑。

但他们都没有成功。

我尝试了之前的所有建议,但都没有效果。 最后,当我把我的电脑连接到互联网,等待颤振释放,然后5分钟解决

如果你使用的是Windows,你可以打开任务管理器,在“进程”选项卡下搜索名为“dart”的进程。结束所有这些任务。

Windows系统:

按:Ctrl + Alt + 删除

  • 在任务管理器中找到你的编辑器,如VS Studio或Android Studio
  • 在找到“飞镖”和结束该任务
  • 然后关闭编辑器
  • 再次打开编辑器
  • 让编辑器完成所有的事情,之后运行您的查询,将工作

在Android Studio中,这对我来说就是工作

如果你的应用还在手机上运行,停止它 或断开测试设备。

然后尝试重新安装该包。

有一些行动可以做:

1-在pubspec。Yaml按“包获得”或在终端类型“颤振包获得”并等待几秒钟。

如果这不起作用:

2型颤振清洗,然后做步骤(1)

如果这也不起作用:

3 .键入killtask /f /im dart.exe

如果这也不起作用:

4-关闭android工作室,然后重新启动你的电脑。

  1. 删除pubspec.lock文件
  2. 从终端编辑器快捷方式(“得到包AndroidStudio这个标志 Visual Studio)在pubspec中运行“颤振酒吧得到”。yaml文件。
  3. 等待下载。
  4. 如果它不起作用,重新启动编辑器,然后重复步骤2。

大多数人说killall -9 dart,但没有人提到对我有用的pkill -f dart

两者之间的区别是解释在这里

重新启动计算机或从当前用户注销,然后重新登录。

  1. 关闭Android Studio。

  2. 打开颤振安装目录/bin/cache。

  3. 删除lockfile。

  4. 此时,可以在命令行上执行与flutter相关的命令来完美解决问题。

在VS代码中运行

flutter clean

在终点站。这解决了我的问题。

code image

你可以尝试杀死所有flutter进程。

转到点4)

1)流程清单:

ps aux

2)包含flutter的搜索名称:

ps aux | grep flutter

其中输出可以如下所示:

stackoverflow     16697   1.5  0.0  4288316    704   ??  S    10:02PM   0:15.80 bash /flutter_path/flutter/bin/flutter --no-color build apk
stackoverflow      2800   1.5  0.0  4288316    704   ??  S     9:59PM   0:18.49 bash /flutter_path/flutter/bin/flutter --no-color pub get
stackoverflow      1215   1.5  0.0  4280124    700   ??  S     9:58PM   0:18.89 bash /flutter_path/flutter/bin/flutter --no-color config --machine
stackoverflow      8449   1.5  0.0  4296508    716   ??  S    10:00PM   0:17.20 bash /flutter_path/flutter/bin/flutter --no-color pub get
stackoverflow      1326   1.4  0.0  4288316    708   ??  S     9:58PM   0:18.97 bash /flutter_path/flutter/bin/flutter daemon
stackoverflow     16687   0.0  0.0  4279100    820   ??  S    10:02PM   0:00.01 bash /flutter_path/flutter/bin/flutter --no-color build apk
stackoverflow      8431   0.0  0.0  4288316    804   ??  S    10:00PM   0:00.02 bash /flutter_path/flutter/bin/flutter --no-color pub get
stackoverflow      2784   0.0  0.0  4288316    704   ??  S     9:59PM   0:00.01 bash /flutter_path/flutter/bin/flutter --no-color pub get
stackoverflow      1305   0.0  0.0  4280124    712   ??  S     9:58PM   0:00.01 bash /flutter_path/flutter/bin/flutter daemon
stackoverflow      1205   0.0  0.0  4279100    788   ??  S     9:58PM   0:00.01 bash /flutter_path/flutter/bin/flutter --no-color config --machine
stackoverflow     11416   0.0  0.0  4268176    536 s000  R+   10:18PM   0:00.00 grep --color flutter

3)获取进程ID

我们需要第二个列的内容(从上面的输出):

ps aux | grep flutter | awk '{print $2}'

4 a)“自动”杀死:

列出,搜索和杀死所有你可以使用的人

kill $(ps aux | grep flutter | grep -v grep  | awk '{print $2}')

(你也可以用sudo运行它)

ps aux | grep flutter | grep -v grep | awk '{print $2}' | xargs kill -15

4 b)手动杀死

您可以使用以下命令逐个杀死进程:

sudo kill -15 <process_ID>

例如,关闭id为13245的进程:

sudo kill -15 13245

如果-15不能工作,你可以尝试-2-1

最后一个选项是-9,不应该使用它,因为它阻止进程做任何清理工作。

您可以删除颤振并“重新安装”,所以最快的方法是:

1)检查哪里有flutter(作为可执行文件)

要检查它,你可以运行:

which flutter

你可以期待这样的输出:

/your_user/your_path/flutter/bin/flutter

2)进入该目录

以上路径是直接到颤振,但我们想去目录,所以“;在路径:

cd /your_user/your_path/flutter/bin

3)检查它是否是git存储库

应该是这样,但它值得检查。

运行一个git命令。

git status

git branch

当它是git存储库时,你会收到一些关于它的信息或正确的分支列表。

4)删除所有文件

rm -R *

5)“revert"删除到只有必要的文件:

git co -- .

6)瞧!

你可以只运行flutter version和命令应该工作(颤振将获取一些必要的数据)。

所有这些答案都对我没有帮助。

唯一的解决方案是删除整个颤振的东西(并重新安装颤振从git):

<flutter directory>
<user>/.flutter_tool_state
<user>/.dart
<user>/.pub-cache
<user>/.dartServer
<user>/.flutter

我也有同样的问题,我尝试了上面所有的解决方案,但没有一个对我有效。然后我在flutter目录下搜索了关键词,找到了如下代码。所以我尝试删除bin/cache/.upgrade_lock,它终于工作了。

enter image description here

我已经尝试了下面所有的步骤,但没有一个有效。

  1. 删除lockfile;
  2. 运行killall -9 dart;
  3. 重启我的电脑。

下面是最后一个对我有用的命令

rm -rf <flutter_dir>bin/cache/.upgrade_lock

对我来说,问题的根本原因是我的Mac设备上出现了一个它没有预料到的flock二进制版本。把它从小路上移开就成功了;可能是BSD和GNU的语法问题。