Подтвердить что ты не робот

Блокировка невозможна в каталоге C:\eclipse\configuration\org.eclipse.osgi

Раньше у меня была Eclipse 3.5.2, работающая из моей ограниченной учетной записи пользователя (т.е. не администратора).

Но когда я обновился до 3.6.2, Eclipse отказывается запускаться в учетной записи с ограниченным доступом (она работает только под администратором).

Он выдает следующую ошибку:

Блокировка невозможна в каталоге C:\затмение\Конфигурация\org.eclipse.osgi. Общей причиной является то, что файловая система или среда выполнения не поддерживает блокировку файлов для это место. Выберите другое местоположение или отключите файл. блокировка передачи "-Dosgi.locking = none" в качестве аргумента виртуальной машины. C:\затмение\Конфигурация\org.eclipse.osgi.manager.fileTableLock(Доступ запрещен)

Ну, я проверил владельца этой папки (Windows XP), и это Администратор, поэтому, конечно, доступ будет отклонен.

Но... почему это не произошло в Eclipse 3.5.2?

Возможно, мне удалось обойти это, назначив право собственности на весь C:\eclipse\configuration\org.eclipse.osgi, но не понимая, почему, я не знаю, нужно ли мне это делать для дополнительных папок.

Другим обходным решением является выполнение так же, как и сообщение об ошибке: Отключить блокировку передачи файлов -Dosgi.locking=none в качестве аргумента виртуальной машины. Но я не понимаю, что такое компромисс (блокировка существует по какой-то причине, правильно? Что это такое?)

Если я понимаю, какова цель этой блокировки, я могу разумно выбрать один из двух обходных решений, описанных выше.

4b9b3361

Ответ 1

Это связано с запуском Eclipse в многопользовательской среде, сначала прочитайте эту секцию помощи Eclipse для многопользовательских установок. Когда Eclipse был установлен, это было сделано как учетная запись администратора. Это означало, что папка configuration была доступна, и Eclipse считал, что это общая конфигурация или частная установка. Из-за этого Eclipse сначала попытается записать данные в каталог конфигурации, но не будет работать для обычных пользователей.

Что вы хотите сделать, так это заставить Eclipse понять, что у вас установлена ​​общая установка, и что все данные конфигурации должны находиться в домашнем каталоге пользователей.

См. этот аналогичный вопрос и этот ответ поддержки IBM для получения дополнительной информации.

Ответ 2

У меня была такая же проблема с версией Juno.

Несколько лет назад я создал многопользовательскую среду, которая отлично работала, но со временем все изменилось. Теперь, мое очевидное решение, чтобы изменить разрешения, не работало вообще.

Проблема в том, что файлы блокировки имеют специальные разрешения, которые 777 не изменятся. Кроме того, это не лучшее решение для предоставления 777 каталогу внутри любой UNIX-системы (Linux, AIX и т.д.); затем я работал с другим решением.

Внутри каталога Eclipse вы можете найти файл eclipse.ini. Там вы можете поместить аргументы vm, хотя предложенная Eclipse не будет работать.

Моя среда начала работать с этим:

[email protected]/.eclipse

Таким образом, каждый пользователь внутри среды, запускающей программу Eclipse, создаст другой каталог .eclipse внутри конкретного дома с полными правами и нулевыми проблемами.

Я ожидаю, что это будет полезно для всех "на стороне UNIX".

Ответ 3

Правильное исправление

Убедитесь, что вы обновляете разрешения Eclipse и рабочей области независимо от того, как работает Eclipse. Вы можете использовать ps -ef | grep -i eclipse, пока eclipse работает, чтобы найти этого пользователя. Как только у вас есть пользователь, вы можете легко использовать chown -R user:group ~/Documents/workspace**

Hacky fix

  • Измените разрешение самого eclipse везде, где вы его установили (в моем случае /opt/ ):

    sudo chmod -R 770/opt/eclipse

  • Измените разрешение рабочей области, где бы вы ни находились (в моем случае ~/Documents/):

    sudo chmod -R 770 ~/Документы/рабочее пространство

Надеюсь, это поможет моим знакомым пользователям Linux!

Вы можете попробовать это на окнах с правильным синтаксисом.

Спасибо Фредерику за вашу помощь!

Ответ 4

Я бы не стал chmod до 777, чтобы исправить эту проблему. В моем случае владелец был root:root после того, как Rational Team Concert установил для некоторых файлов RTC, а не мой идентификатор пользователя. Перейдите в домашний каталог вашего пользователя и ls -ltr, чтобы узнать, что ваш идентификатор пользователя и groupid (на мойке Ubuntu были одинаковыми), а затем выполните следующее в подкаталоге eclipse

sudo chown -R myuserid:groupid /opt/ibm/eclipse

Ответ 5

У меня возникла эта проблема при попытке создать рабочее пространство в подключенном сетевом диске.

Один из вариантов - запустить Eclipse с терминала с помощью ./eclipse -vmargs -Dosgi.locking=none.

Другой вариант - добавить osgi.locking=none в файл config.ini в папке конфигурации Eclilpse.

Второй вариант более удобен, но имеет побочный эффект, позволяющий любому числу экземпляров Eclipse работать в одном и том же рабочем пространстве.

Ответ 6

Я просто добавил osgi.locking = none в файл config.ini, он начал работать. Спасибо всем за вашу помощь.

Ответ 7

Кто имеет доступ на запись в каталог: C:\eclipse и C:\eclipse\configuration?

AFAIK eclipse при запуске решает, использовать ли центральную установку в качестве местоположения конфигурации или каталог, доступный для пользователя, в зависимости от того, можно ли перезаписывать каталог eclipse (или, возможно, конфигурацию).

Ответ 8

просто скопируйте и вставьте свою папку eclipse в папку в вашем текущем пользовательском пространстве (если вам трудно найти одну из правильных папок, просто поместите ее в C:\Documents and Settings\your_user_account_name). создайте только новую папку рабочей области. Работал для меня....!

Ответ 9

Вот еще одна причина появления этого сообщения. Может показаться очевидной проверкой, но если флаг "только для чтения" установлен в файле .fileTableLock (это в Windows, не знаю о Linux), вы также получите эту ошибку Access Denied. Это возникло из-за того, что мы разархивировали предварительно сконфигурированное рабочее пространство и конфигурацию в средах IDE наших пользователей.

Ответ 10

У меня была аналогичная проблема, запущенная на сервере с идентификатором администратора.

Понижение UAC и перезагрузка сервера исправили его.

Ответ 11

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

Ответ 12

Ну, на окнах простая работа для этого - запуск Eclipse в качестве администратора.

Щелкните правой кнопкой мыши значок Eclipse и выберите "Запуск от имени администратора".

Это решит вашу проблему.

Наслаждайтесь:)