web-dev-qa-db-fra.com

Utilisation d'un emplacement différent pour l'arborescence .p2 d'Eclipse

J'essaie actuellement de configurer Eclipse pour qu'il fonctionne à partir de/opt/Eclipse.

Tout allait bien; J'extrais le logiciel à l'aide du programme d'installation d'Eclipse vers/opt/Eclipse; J'ai créé un lien vers celui-ci dans mon répertoire/usr/bin afin de pouvoir taper simplement «Eclipse» pour l'exécuter à partir de n'importe où sur mon terminal utilisateur et je pensais avoir terminé jusqu'à ce que cela se produise:

$ Eclipse/root/.p2/pool/plugins/org.Eclipse.equinox.launcher.gtk.linux.x86_64_1.1.400.v20160518-1444: impossible d'ouvrir un fichier objet partagé: Autorisation refusée Gtk- Message: GtkDialog mappé sans parent transitoire. Ceci est découragé.

Après quelques recherches dans les fichiers /opt/Eclipse/eclipse.ini et /opt/Eclipse/configuration/config.ini, je suis parvenu à la conclusion que lorsque j’ai installé Eclipse à l’aide du programme d’installation, il a installé les bibliothèques nécessaires sous/répertoire racine.

Je peux utiliser 'Sudo Eclipse' et cela fonctionne, mais il est fastidieux de devoir entrer mon mot de passe à chaque fois. Je songe à copier le fichier .p2 sous/usr/lib pour le "généraliser" et permettre l'accès depuis n'importe quel pwd en tant qu'utilisateur; serait-ce une bonne idée ou devrais-je faire autre chose?

12
Cameron Wetzel

Le dossier .p2 est un dossier d'installation partagé, référencé par toutes les instances Eclipse créées par le programme d'installation. Malheureusement, je ne pense pas qu'il soit prudent de déplacer la version existante (je me trompe peut-être, mais je ne sais pas combien de fois elle est référencée), mais vous pouvez en créer une nouvelle.

Le concept que l'installateur utilise ici s'appelle 'Bundle pool' et vous pouvez configurer autant d'emplacements que vous le souhaitez. Pour ouvrir les paramètres du pool de lots, recherchez l'élément correspondant dans l'interface utilisateur du programme d'installation.

Dans le cas d’une interface utilisateur simple, appuyez sur le menu situé en bas (1), puis sélectionnez Bundle pools ...:  Bundle Pool setting with simple UI

Si vous utilisez l'interface utilisateur avancée, une liste déroulante au bas de la première page de l'assistant répertorie la liste des pools d'ensembles existants. En cliquant sur le bouton à côté de celui-ci, vous pouvez accéder au gestionnaire de pool d'ensembles.  Bundle Pool setting with the Advanced UI

Dans les deux cas, dans la boîte de dialogue présentée, vous pouvez créer votre propre pool d'ensembles que vous pouvez placer dans le dossier de votre choix, puis l'utiliser comme source d'installation.

Enfin, si vous avez déplacé toutes vos installations vers ce nouveau pool, vous pouvez supprimer en toute sécurité votre dossier de pool d'ensembles d'origine. Il ne sera plus nécessaire.

10
Zoltán Ujhelyi

Dites que je suis un utilisateur me.

  • Avant l'installation, changez la propriété de /opt/Eclipse avec Sudo chown -R me:me /etc/Eclipse pour pouvoir lancer le envince-installer sans les droits Sudo. 
  • Installez dans /opt/Eclipse en mode simple. Aucun dossier sur /root/.p2 n'est créé. L'arbre .p2 est installé dans mon répertoire personnel (mais comme indiqué dans l'autre réponse vous pouvez le personnaliser aussi) 
  • Après l’installation, rétablissez la propriété de /etc/Eclipse avec Sudo chown -R root:root /etc/Eclipse. Maintenant, je peux démarrer l'exécutable sous /opt/Eclipse sans les droits Sudo puisqu'il n'est pas nécessaire d'accéder à /root.
  • Je crée un alias et même un élément dans le menu du lanceur pour démarrer Eclipse à partir de l'environnement de bureau. 

Mes spécifications: Ubuntu 14.04 LTS, Environnement d'exécution Java SE build 1.8.0_111-b14, programme d'installation d'Eclipse 1.6.0 Build 2790, Eclipse Neon

1
XavierStuvw

J'ai rencontré le même problème (le répertoire personnel devenait énorme) et j'ai fait un piratage:

$ mv ~/.p2 /opt/Eclipse/p2
$ ln -s /opt/Eclipse/p2 ~/.p2

Le programme d'installation d'Eclipse (... et Eclipse lui-même) semble satisfait du lien symbolique et les informations de "pool" sont désormais hébergées dans la zone/opt/Eclipse et consomment de l'espace disque par là.

Vous pouvez devez obtenir quelques privilèges de superutilisateur pour faire le premier déplacement, mais cela fonctionne avec des autorisations ouvertes et plusieurs utilisateurs ajoutant des liens symboliques à la même zone.

0
mjn