다른 잠금 명령이 시작 잠금을 해제하기를 기다리는 중


187

Flutter 애플리케이션을 실행하면

다른 잠금 명령이 시작 잠금을 해제하기를 기다리는 중

이 메시지는 더 이상 진행되지 않습니다.


19
어떤 OS? 시도하십시오 killall -9 dart. 어떤 Flutter 버전을 사용하고 있습니까? 당신이 사용하는 경우 flutter pub pub run build_runner watch를 참조 github.com/flutter/flutter/issues/14703#issuecomment-369404176을
귄터 Zöchbauer을

귀하의 재생에 감사하지만 내 문제가 자동으로 해결되는 방법을 모르겠습니다. 정말 이상합니다.
Viren V Varasadiya

내 경우에는 방금 랩톱을 다시 시작했습니다. 문제를 해결했습니다.
Md. Najmul Hasan

3
방금 IDE를 다시 시작했는데 저에게
효과적

내 경우에는 두 개의 diff 프로젝트를 열고 두 가지 명령을 모두 1) flutter build apk 2) flutter run에서 실행합니다. 첫 번째 프로젝트가 실행을 완료하고 두 번째 프로젝트가 실행을 시작함에 따라 다른 프로젝트의 실행을 중단하고 첫 번째 프로젝트의 완료를 기다렸습니다.
M.ArslanKhan

답변:


451

제 경우에는 터미널에서 다음 명령이 도움이되었습니다 (Günter가 제안한대로).

killall -9 dart

Windows에서 (업업에서 제안한대로) :

taskkill /F /IM dart.exe

39
Windows 사용자의 경우 :에서 taskkill / F / IM dart.exe
upupming

그런 다음 진행 방법, flutter를 처음 사용하는 경우, flutter git을 복제하고 env var를 설정 했습니까?
Aashiq 아메드

50

이 파일을 제거하십시오 :

<YOUR FLUTTER FOLDER>/bin/cache/lockfile

그러면 점유 된 잠금이 해제되고 다른 명령을 실행할 수 있습니다.


1
그러나 잠금 파일이 잠겨 있습니다. 사용 중이며 삭제할 수없는 것 같습니다. 좋아, 그것은 작동하지만 Android Studio를 닫고 약 1 분 정도 기다려야합니다. 그런 다음 해당 파일을 삭제할 수 있습니다.
Yster

15

Windows에서 :

누릅니다 : Ctrl+ Alt+Delete

  • 작업 관리자에서 VS Studio 또는 Android Studio와 같은 편집기를 찾으십시오.
  • "다트"를 찾아서 그 일을 끝내세요
  • 그런 다음 편집기를 닫으십시오
  • 다시 편집기 열기
  • 에디터가 모든 작업을 완료하도록하세요.

나를 위해 다트 작업이 없습니다.
Yster

10

Visual Studio Code와 함께 Mac을 사용하는데 이것이 효과가 있습니다.

PC를 종료 하고 다시 켜십시오. 재시작 기능을 사용하지 마십시오. 2 번 다시 시작했는데 작동하지 않았습니다. 종료 만 작동했습니다.

추신 : 나는 다음을 시도했다.

  1. 잠금 파일을 삭제하십시오.
  2. 실행 killall -9 dart;
  3. 내 PC를 다시 시작하십시오.

그러나 그들은 모두 작동하지 않았습니다.


7

IDE에서 종료 한 다음 시작 관리자에서 모든 다트 관련 파일 (있는 경우)을 중지하십시오.
그런 다음
"FLUTTER DIRECTORY"/bin/cache/lockfile
이 잠금 파일 로 이동하여 삭제하십시오.


6

1. 실행중인 모든 다트 인스턴스 중지

Android Studio를 사용중인 경우 작업을 저장하고 닫으십시오. 그리고 실행중인 다트 인스턴스를 종료하려면 터미널을 엽니 다.

리눅스 :

killall -9 dart

윈도우 :

taskkill /F /IM dart.exe

2. 제거 lockfile

lockfileflutter 설치 디렉토리에서 찾을 수 있습니다 .

<flutter folder>/bin/cache/lockfile


3

이전의 모든 제안을 시도했지만 아무런 이점이 없었습니다. 마지막으로 PC를 인터넷에 연결하고 플러터가 풀릴 때까지 기다린 후 5 분이 지나면 해결됩니다.


2

에디터에서 플러터 프로젝트를 열었을 때도 마찬가지입니다. 편집기를 닫고 명령을 다시 실행하십시오.


2

나는 같은 문제가 있는데 위의 모든 해결책을 시도했지만 그중 어느 것도 나를 위해 일하지 않았다. 그런 다음 flutter 디렉토리에서 키워드를 검색하고 다음 코드를 찾았습니다. 그래서 삭제를 시도했지만 bin/cache/.upgrade_lock마침내 작동했습니다.

여기에 이미지 설명을 입력하십시오


1

Windows를 사용하는 경우 작업 관리자를 열고 '프로세스'탭에서 'dart'라는 프로세스를 검색 할 수 있습니다. 모든 작업을 종료하십시오.


1
  1. pubspec.lock 파일 삭제
  2. pubspec.yaml 파일의 터미널 또는 편집기 바로 가기 ( " 패키지 가져 오기 " AndroidStudio 또는 이 로고 Visual Studio )에서 " flutter pub get "를 실행하십시오 .
  3. 다운로드를 기다립니다.
  4. 작동하지 않으면 편집기를 다시 시작한 다음 2 단계 를 반복 하십시오 ..



0

나는 또한 가장 좋고 가장 쉬운 방법을 따른 동일한 문제에 직면했다.

환경 : Windows

IDE : 안드로이드 스튜디오

도구> 플러터 (마지막 옵션)> 플러터 청소 선택

플러터 청소 후 모든 준비가 완료되었습니다.


0

Android Studio에서 그것은 나를 위해 일합니다

휴대 전화에서 앱이 계속 실행되는 경우 앱을 중지하거나 테스트 장치를 분리하십시오.

그런 다음 패키지를 다시 설치하십시오.


0

수행 할 조치가 있습니다.

1- pubspec.yaml에서 "packages get"을 누르거나 터미널 유형 "flutter package get"을 누르고 초를 기다립니다.

이것이 작동하지 않으면 :

2 형 플러터 청소 후 단계 (1)

이것이 작동하지 않으면 :

3-type killtask / f / im dart.exe

이것이 작동하지 않으면 :

4- 안드로이드 스튜디오를 닫고 PC를 다시 시작하십시오.


0

초보자를위한

약간의 시간이 소요되지만 가장 간단한 해결책은 컴퓨터를 다시 시작하거나 현재 사용자로부터 간단한 로그 아웃 한 후 다시 로그인하는 것입니다.


1
로그 아웃하고 로그인하여 문제를 해결하십시오. (그리고 플랫폼에 의존하거나 하나만 시도한다면, 플랫폼을 언급하십시오.)
greybeard

1
Mac OS Mojave 사용
Mithilesh Parmar

2
비슷한 문제에 직면하여 위의 방법으로 문제를 해결했습니다
Mithilesh Parmar

0

이전 솔루션의 대부분을 수행했지만 작동하지 않았으므로 VS 코드를 열어 인터넷에 연결된 랩톱을 그대로 두었다가 잠시 꺼져 있으면 다시 켜서 작동했습니다.


0
  1. Android Studio를 끕니다.

  2. flutter 설치 디렉토리 / bin / cache를여십시오.

  3. 잠금 파일을 삭제하십시오.

  4. 이 시점에서 문제를 완벽하게 해결하기 위해 명령 행에서 flutter 관련 명령을 실행할 수 있습니다.


0

방금 터미널을 1 분 동안 열어 두었습니다. 그런 다음 다시 잘 작동하기 시작했습니다.


0

모든 flutter프로세스를 시도 할 수 있습니다 .

TL; DR-지점으로 이동 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를 12345사용하여 프로세스를 종료 하려면 다음을 수행하십시오.

sudo kill -15 13245

경우 -15작동하지 않습니다, 당신은 시도 할 수 있습니다 -2또는 -1.

최종 옵션 -9은 프로세스가 정리 작업을 수행하지 못하므로 사용해서는 안됩니다.


0

flutter를 제거하고 "다시 설치"할 수 있으므로 가장 빠른 방법은 다음과 같습니다.

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) 필요한 파일 만 갖도록 "되돌리기"제거 :

git co -- .

6) 짜잔!

그냥 실행할 수 flutter version있고 명령이 작동해야합니다 (Flutter는 필요한 데이터를 가져옵니다).


0

이 답변들 중 아무것도 도움이되지 않았습니다.

유일한 해결책은 전체 flutter 물건을 제거하고 git에서 flutter를 다시 설치하는 것입니다.

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

-1

먼저 IDE를 다시 시작한 다음 터미널의 프로젝트 폴더에서 다음 명령을 실행하십시오.

killall -9 dart

그것은 나를 위해 일했다. 그것이 같은 문제에 직면하는 일부 사람들에게 도움이되기를 바랍니다.


1
사용 -9하면 프로세스가 정리 작업을 수행하지 못합니다. 당신은 기본적으로 만 사용해야합니다 -9당신이 이미 시도 할 때 -2, -15그리고 -1그들 중 누구도 일했다.
트리플 리

-1

네트워크 문제인 것 같습니다. 내 Wi-Fi를 끄고 랩톱을 4G 연결로 휴대 전화로 연결했는데 5,9 초 안에 작동합니다.


-2

다른 flutter 명령이 백그라운드에서 실행될 때 발생합니다. 이 문제를 해결하기 위해 Mac에서 실행할 수 있습니다.

killall -9 dart

Windows의 경우 작업 관리자를 엽니 다. 그런 다음 프로세스 탭에서 다트 프로세스를 검색하고 모두 제거하십시오. 이것이 도움이되기를 바랍니다.


1
kill -9기본적으로 사용해서는 안됩니다. 그냥 killall실패하면 다른 신호를 사용해보십시오. 아무 것도 효과가 없다면 번호 9는 가장 마지막 수단입니다.
트리플 리

또한 동일한 반 패턴을 권장하는 이전 답변을 반복합니다.
트리플 리

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.