2014-12-08 14 views
21

Próbuję wygenerować projekty Eclipse i IDEA dla projektu play za pomocą aktywatora. Kiedy próbowałem to zrobić, to robi się trochę, ale potem wisi na:Aktywator `.sbt.ivy.lock` nie jest dostępny

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

Na początku myślałem, że moja sesja z systemem IntelliJ IDEA mogą być sprzeczne, zabiłem pomysł i problem trwało. Zamknąłem aktywator, usunąłem plik blokady i zrestartowałem aktywator, ale potem odtworzyłem plik blokady i dałem mi ten sam problem. To jest pełny dziennik, który otrzymuję.

[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... 

Jak mogę naprawić problem związany z plikiem blokującym?

Odpowiedz

23

Plik .sbt.ivy.lock służy do synchronizowania dostępu do lokalnego repozytorium ivy2 między kilkoma procesami, dzięki czemu nie można jednocześnie modyfikować katalogu. Zwykle opisywana sytuacja ma miejsce, gdy w tym samym czasie uruchomiony jest terminal IDE i Activator/sbt.

Nawet jeśli zabiłeś proces pomysłu, mógł powstać inny proces, który spowodował blokadę, więc następnym razem upewnij się, że zabiłeś wszystkie procesy Java. Jednak najlepszym rozwiązaniem tego problemu jest uniknięcie blokowania jednego procesu innym. Więc uruchom tylko jeden proces, który używa repozytorium ivy2 w tym samym czasie.

+2

W moim przypadku wystąpiła aktywator działający w tle. Po tym, jak zabiłem proces, mogłem użyć 'activator' – Halil

+3

I zamknąłem netbeans, a następnie aktywator przystąpił. – Martlark

3

Jeśli nic nie działa, ostatnim krokiem jest zabicie pliku .lock.

+0

Poza mętnym stwierdzeniem, co należy zrobić, w jaki sposób zabić plik .lock? Gdzie to się znajduje? Jak ustalić, gdzie się znajduje? Jak określić ścieżkę do gry na komputerze. W tej chwili używam systemu OSX. Wszelkie cenne porady są mile widziane. –

+2

killall -9 java zabije wszystkie procesy java. –

+1

Stare, ale chciałem zostawić dodatkowe szczegóły dla zero_cool: Komunikat blokady zazwyczaj zawiera całą ścieżkę: Oczekiwanie na blokadę /foo/bar/.ivy2/.sbt.ivy.lock będzie dostępne ... Stamtąd po prostu usuń plik .sbt.ivy.lock i spróbuj ponownie –

0

wychodził podobny problem, ja również otrzymuję ten sam błąd

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

wreszcie problem było to, że inny proces SBT działa na moim systemie, i dlatego, że .sbt.ivy. plik blokady nie był dostępny. Jak wyjaśnił dobrze Daniel, plik blokady jest używany do celów synchronizacji.

Po zakończeniu poprzedniego procesu ponownie nie napotkałem tego błędu.

Powiązane problemy