29 votes

Le verrouillage n'est pas possible dans le répertoire C: \ eclipse \ configuration \ org.eclipse.osgi

J'ai utilisé Eclipse 3.5.2 de travail à partir de mon Compte d'Utilisateur Limité (non Administrateur).

Mais quand j'ai mis à 3.6.2, Eclipse refuse de s'exécuter dans le Compte d'Utilisateur Limité (il ne fonctionne que sous administrateur).

Il émet le message d'erreur suivant:

Le verrouillage n'est pas possible dans le répertoire C:\eclipse\configuration\org.eclipse.osgi. Une raison courante est que la système de fichiers ou de l'Environnement d'Exécution ne prend pas en charge le fichier de verrouillage pour cet emplacement. Veuillez choisir un autre emplacement, ou de désactiver le fichier verrouillage de passage "-Dosgi.verrouillage=none" comme une machine virtuelle argument. C:\eclipse\configuration\org.eclipse.osgi.le gestionnaire.fileTableLock (Accès refusé)

Eh bien, j'ai vérifié le propriétaire de ce dossier (Windows XP) et il est l'Administrateur, bien sûr, l'accès sera refusé.

Mais... pourquoi n'est-il pas ainsi dans Eclipse 3.5.2?

Je pourrais contourner ce problème en attribuant la propriété de l'ensemble de l' C:\eclipse\configuration\org.eclipse.osgi , mais sans comprendre pourquoi, je ne sais pas si j'aurais besoin de le faire pour d'autres dossiers.

Une autre solution consiste à faire tout comme le message d'erreur suggère: Désactiver le verrouillage des fichiers en passant -Dosgi.locking=none en tant que machine virtuelle argument. Mais je ne sais pas ce que le compromis serait de verrouillage est là pour une raison, non? Quel est-il?)

Si je comprends ce qu'est le but de que le verrouillage est, je peux judicieusement choisir l'une des 2 solutions de contournement décrites ci-dessus.

15voto

Fredrik Points 5960

Cela a à voir avec la gestion de l'Éclipse dans un environnement multi-utilisateur, lisez d'abord cette Éclipse section d'aide sur les installations utilisateur. Lors de l'Éclipse a été installé, il a été fait comme un compte administrateur. Cela signifie que l' configuration le dossier était accessible et Eclipse pensais que c'était une configuration partagée ou privée installer. En raison de cette Éclipse va d'abord essayer d'écrire des données à la configuration du catalogue, mais échoue pour les utilisateurs normaux.

Ce que vous voulez faire est de faire de l'Éclipse de réaliser que vous avez une installation partagée, l'installation et que toutes les données de configuration doit être dans le répertoire de base d'utilisateurs.

Voir cette question similaire, et ce support IBM réponse pour plus d'informations.

13voto

Marco Alvarado Points 121

J'ai eu le même problème avec la version Juno.

Il y a plusieurs années, j'ai fait un environnement multi-utilisateur qui a parfaitement bien fonctionné, mais les choses ont changé avec le temps. Maintenant, ma solution évidente, pour modifier les autorisations, ne fonctionne pas du tout.

Le problème est que les fichiers de verrouillage ont autorisations spéciales que l' 777 ne changera pas. Aussi, il n'est pas la meilleure solution pour fournir de l' 777 d'un répertoire à l'intérieur de tout système UNIX (Linux, AIX, etc.); ensuite, j'ai travaillé autour d'une autre solution.

À l'intérieur du répertoire Eclipse vous pouvez trouver un eclipse.ini le fichier. De là, vous pouvez mettre la vm arguments, bien que celui proposé par Eclipse ne fonctionne pas.

Mon environnement a commencé à travailler avec celui-ci:

-Dosgi.configuration.area=@user.home/.eclipse

De cette manière, chaque utilisateur à l'intérieur de l'environnement d'exécuter le programme d'Eclipse, permettra de créer un autre .eclipse répertoire à l'intérieur de la maison particulière, avec tous les droits et zéro problème.

J'espère que cela sera utile pour tout le monde "à la UNIX"côté.

7voto

ElGamed Points 769

Bon fix

Assurez-vous de mettre à jour les autorisations d'Eclipse et de l'espace de travail à tout utilisateur d'Eclipse s'exécute. Vous pouvez utiliser ps -ef | grep -i eclipse alors que l'éclipse est en cours d'exécution à trouver que de l'utilisateur. Une fois que vous avez de l'utilisateur, vous pouvez facilement utiliser chown -R user:group ~/Documents/workspace**

Hacky fix

  1. L'autorisation de modification de l'éclipse elle-même où vous l'avez installé (dans mon cas /opt/):

    sudo chmod -R 770 /opt/eclipse

  2. L'autorisation de modification de l'espace de travail où vous l'avez situé (dans mon cas ~/Documents/):

    sudo chmod -R 770 ~/Documents/espace de travail

Espérons que cela aide mes collègues utilisateurs de Linux!

Vous pouvez l'essayer sur windows avec la bonne syntaxe.

Merci à Frédéric pour votre aide!

4voto

Je ne voudrais pas chmod à 777 pour résoudre ce problème. Dans mon cas, le propriétaire était root:root après une installation de Rational Team Concert pour certains fichiers RTC et non mon ID utilisateur. Accédez au répertoire de base de votre utilisateur et ls -ltr pour voir quels sont vos ID utilisateur et groupid (sur le mien Ubuntu étaient les mêmes), puis exécutez ce qui suit dans votre sous-répertoire eclipse

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

3voto

ems Points 133

J'ai eu ce problème lors de la tentative de création d'un espace de travail dans un lecteur réseau mappé.

Une option consiste à démarrer Eclipse à partir du terminal avec ./eclipse -vmargs -Dosgi.locking=none .

Une autre option consiste à ajouter osgi.locking=none au fichier config.ini dans le dossier de configuration d'Eclilpse.

La deuxième option est plus pratique, mais a pour effet secondaire d'autoriser un nombre illimité d'instances Eclipse exécutant le même espace de travail.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X