Eclipse говорит: «Рабочая область используется или не может быть создана, выбрана другая». Как разблокировать рабочее пространство?


295

Когда я начинаю, Eclipse говорит: «Рабочая область не может быть заблокирована»

«Не удалось запустить продукт, поскольку соответствующее рабочее пространство в настоящее время используется другим приложением Eclipse». или «Рабочая область используется или не может быть создана, выбрана другая».

Но я знаю, что это не так.

Как мне "разблокировать" это?

Ответы:


548

Просто удалите .lockфайл в .metadataкаталоге в каталоге рабочего пространства eclipse.

Меры предосторожности - если вы удалите .metadataпапку, все предпочтения будут удалены.


3
Кажется, я не могу удалить его, поскольку он говорит, что он уже открыт в затмении, когда он действительно не открыт ...
Anubha

31
Посмотрите, есть ли какой-нибудь процесс, связанный с затмением, работающим в фоновом режиме, и убейте его.
AlvaroSantisteban

6
Спасибо Борис! Не самое подходящее место, но я должен разглагольствовать сейчас. Почему Eclipse не дает возможность удалить файл .lock или даже намека на его существование? Какая уважающая себя IDE не может иметь несколько экземпляров, работающих в одном рабочем пространстве? Если удаление файла .lock является единственным решением, почему Eclipse не удаляет его при запуске после проверки, что другие экземпляры не запущены? Если подумать, тогда файл .lock мгновенно устареет! Наконец, другие редакторы никоим образом не блокируются от открытия файлов в рабочей области, поэтому с самого начала это бесполезно. Я действительно ненавижу тебя, Затмение!
pauluss86

7
.lockФайл скрытый файл, так что если вы идете искать его с ls, не забудьте -aопцию: ls -a .metadata.
Джон МакГи,

4
Прежде чем удалять файл блокировки, убедитесь, что старый процесс затмения действительно мертв, как вы думаете
Амир Увал,

39

Я видел еще 3 исправления:

  1. в файле .metadata /, rm .lock
  2. если # 1 не работает, попробуйте убить процесс javaw.exe и т. д. тогда файл rm .lock
  3. если # 1 и # 2 не работают, попробуйте файл rm .log в .metadata /, и дважды проверьте .plugin /.
  4. Это всегда работало для меня: переместить .metadata /, открыть и закрыть затмение, затем перезаписать .metadata обратно

Решение сводится к очистке папки .metadata.


... За исключением того, что если в вашей папке .metadata есть какие-либо пользовательские данные плагина компании, теперь она будет возвращена к исходной версии данных, которую вы получите, если плагин никогда ранее не использовался с Eclipse.
Даррин

14

Перейдите в TaskManager (щелкните правой кнопкой мыши на панели задач), выберите строку меню Processess, выберите eclipse.exe и нажмите EndProcess.


Я использовал STS, поэтому я убил STS.exe
Pratapi Hemant Patel

11

Другой возможной причиной проблемы «Рабочая область используется или не может быть создана, выбрана другая» является то, что реальный путь к вашей рабочей области мог измениться .

В моем случае реальное местоположение рабочей области изменилось, но я использовал символическую ссылку, чтобы она выглядела так же, как в том же месте. Я видел ошибки в журналах, указывающие, что затмение просматривало предыдущее «реальное» местоположение, а не следовало за символической ссылкой, и это вызывало ошибки.

В моем случае я просто переместил рабочее пространство на прежнее место.


Был аналогичный случай в Windows: мои коллеги разрабатывали на диске D :, но у меня был только C :, поэтому я просто использовал SUBST D: C: \ и мог использовать рабочее пространство. На следующий день (при следующем входе в систему) Windows, конечно же, забыла мою SUBST, и я получил сообщение об ошибке.
HVB

7

В другом случае путь к рабочему пространству может не существовать, например, если вы импортировали предпочтения из другого рабочего пространства, некоторые импортированные адреса рабочего пространства могут появиться в вашем диалоговом окне «открыть рабочее пространство»; затем, если вы не обратили внимание на эти адреса, вы получите ту же самую ошибку, когда попытаетесь открыть их.


7

Запущенное затмение Administrator Modeисправило это для меня. Вы можете сделать это [Right Click] -> Запуск от имени администратора на eclipse.exeиз вашей установки реж.

Я был в рабочей среде с машиной win7, имеющей ограниченное разрешение. Я также сделал удалить .lockи .logфайлы , но это не помогло. Это может быть сочетание всего того, что заставило его работать.


Так просто, и все же именно то, что мне нужно! В Linux запускаются из командной строки: sudo eclipse
Джо,

2

Иногда, если вы работаете в Windows, вы можете не видеть все процессы - или процесс виновника в диспетчере задач. Я должен был нажать «Показать процесс от всех пользователей», и был этот java.exe, который мне пришлось убить, чтобы вернуть мое рабочее пространство.


2

Еще один возможный случай, если ничего не работает, это увидеть, что запущено Javaприложение. может быть ваш предыдущий open и close оставил неубитые экземпляры Java.

  1. Ищите любой запущенный экземпляр Java, если есть два, по крайней мере, вам нужно убить одного. Но большую часть времени я убиваю любой работающий Java :), потому что этот Java использует рабочее пространство раньше и будет, если не убить Это.

  2. Измените другое рабочее пространство на тот случай, если вы хотите, чтобы несколько IDE использовали и работали над другим или одним проектом, но вам следует импортировать рабочее пространство формы проекта после открытия вашей IDE.


1

удаление журналов и .lock не работает, но

-чистый вариант исправил это для меня.


1

Я сталкивался с этой проблемой, когда когда-либо затмение не закрывалось (убить процесс затмения с помощью диспетчера задач или выключения компьютера), меня опробовали ниже шагов, это сработало для меня.

1) Удалите имена файлов, начинающиеся с «.fileTable» из этой папки

C: \ затмение \ Конфигурация \ org.eclipse.osgi.manager

2) Удалите из этой папки файлы журнала, такие как текстовые файлы, начинающиеся с числовых имен.

C: \ затмение \ Конфигурация

3) Откройте командную строку (cmd), перейдите в эту папку

C: \ затмение

введите команду ниже

затмение чистый старт

введите описание изображения здесь


0

Ответ @Boris дал правильный 99% времени, однако это также может произойти, если вы откроете рабочую область в более старой версии Eclipse. Рабочая область, импортированная в / созданная с помощью Juno, выдаст эту ошибку при открытии в Galileo.


0

Другая распространенная причина этой проблемы - попытка загрузить каталог на диск, который больше не подключен. Например, скажем, вы программируете на C: \ Code \ Java, но иногда работаете с флэш-накопителем, H: \ Code \ Java. Если у вас нет подключенного диска, можно легко поверить, что вы пытаетесь загрузить действительный каталог, не замечая опечатку.


0

Другая проблема заключается в том, что у eclipse нет прав на запись в вашу папку src. Измените разрешение безопасности и убедитесь, что «Аутентифицированные пользователи» добавлены со всеми проверенными разрешениями, кроме Полного доступа и Специальных разрешений.


0

У меня была эта ошибка после перезапуска системы (после долгого времени. Обычно я просто заставляю ее спать). Выяснилось, что, как только я установил диски (щелкнув и открыв их), где находится папка проекта, и снова запустив Eclipse, я решил эту проблему.

PS: я пользователь Ubuntu.


0

Вот несколько шагов, чтобы решить это нет. 4 шаг - это работа для меня.

  1. Удалите файлы .log в папке .metadata.
  2. Проверьте текущее разрешение пользователя, убедитесь, что флажок «Полный контроль» установлен, нажмите «Применить», затем «ОК».
  3. Если вы запускаете дефрагментацию или обслуживание системного диска перед запуском редактора eclipse, иногда исходный путь к файлу не находится в соответствующем пути, чтобы убедиться, что время «предыдущей версии» запускается до тех пор, пока не будет выполнено техническое обслуживание вашего диска, на котором была сохранена рабочая среда eclipse или что-то подобное ,
  4. Этот последний вариант работает для меня. Проверьте букву вашего текущего диска, на котором был сохранен редактор кода. Если что-то необычное, например, перед вашим обслуживанием, ваша буква диска K, то после дефрагментации или технического обслуживания. Буква диска теперь L, поэтому вам следует изменить букву диска на исходную, то есть K. Чтобы сделать это, нажмите ff: Открыть панель управления Система и безопасность Администрирование Управление компьютером Управление дисками в mngt диска, выберите пример Drive L, затем справа нажмите> изменить букву и путь к диску> нажмите удалить> затем ок, снова откройте его, затем> нажмите добавить и> выберите исходную букву диска для этого диска, затем нажмите ОК. Если вы используете компьютер в течение длительного периода времени, сначала перезагрузите компьютер, чтобы все обновить.

1
Вы могли бы сделать лучший формат для вашего объяснения. Последний шаг трудно прочитать. Также вы написали 4 остановки, а не 5, как вы сказали
Роберт

0

Выбор «другого» на самом деле довольно простое решение.

Я запускал Eclipse как администратор ( sudo eclipseиз командной строки), потому что папка «Рабочая область» выдавала Workspace in use or cannot be created…ошибку (и запуск в качестве администратора, казалось, был единственным решением, которое исправило ее).

Коллега (работавший над этой же проблемой со мной) хотел запустить Eclipse, нажав на иконку. Поэтому, когда он запустил Eclipse, и появилось диалоговое окно с выбором рабочей области, он просто добавил «2» в конец «рабочей области».

Это создало новую папку: "workspace2". Затмение прекрасно с этим справилось; и с тех пор у меня не было проблем с блокировкой.


0

Это произойдет, если вы не закрыли eclipse.exe правильно.

* Откройте диспетчер задач-> Завершите задачу своим eclipse-> Теперь откройте eclipse.exe, он будет работать.

Надеюсь, это поможет кому-то.


0

Я наблюдал один случай, когда Eclipse в принудительном выходе или Alt-f2 xkillEd в Linux, попытка немедленно открыть Eclipse показывает эту ошибку. Даже файл metadat / .lock в этом случае отсутствует. Однако он начинает работать через две минуты


0

Для пользователей Mac:

Может случиться так, что другой фон затмения работает в фоновом режиме. Если это так, используйте либо Force Quit eclipse, либо

ps -ef | grep eclipse
убить -9 пид

ко всем экземплярам затмения и начать новое рабочее пространство


0

Я не знаю, что не так, но я решил, создав каталог прямо на диске c (c: \ dev), а не из моей домашней папки (c: \ users \ me \ dev). Но мне не нужно об этом думать. В моем случае это свежее затмение незажатого экземпляра. Я не могу увидеть папку .matadata в папке Eclipse. Господи, решил я.


0

Запустите Eclipse с опцией -Dosgi.locking=none.

Я получил трюк здесь, и это работает.

Не делайте этого, если вы не знаете, что никто не может работать с одним файлом одновременно.


0

Причина, по которой это происходило со мной (с Фотоном), была легко устранена путем изменения общих предпочтений Затмения:

Window -> Preferences -> General: Uncheck: "Always run in background"

После внесения этого изменения, когда вы выключаете Eclipse, он больше не оставляет процесс javaw.exe запущенным в фоновом режиме. Я предполагаю, что это ошибка в Photon (или ошибка с использованием Java-версии Amazon Corretto OpenJDK с Eclipse), которая однажды будет исправлена.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.