Question

Je veux créer un programme d'installation automatique pour un plug-in Eclipse (à savoir pas par le « Update Manager »). Mon scénario est simple:. L'utilisateur ferme Eclipse, laisse tomber un JAR téléchargé dans le dossier dropins, commence Eclipse et le reste du processus est automatisé

Dans les anciennes versions Eclipse, avant l'ère de la P2, Eclipse avait (a encore) une classe appelée InstallCommand qui pourrait être utilisé pour installer pluings dans la plate-forme en cours d'exécution.

Bien que cela fonctionne encore dans Eclipse 3.4 et 3.5, il ne se comporte pas correctement: plus sensiblement, les plugins installés de cette façon ne peut pas être désinstallée automatiquement (il est grisé).

Le JavaDoc revendique le InstallCommand est dépréciée et devrait être remplacée par une alternative P2. Cependant, je ne pouvais pas trouver le bon outil pour le travail. Il est directeur P2 , mais il est construit pour faire fonctionner comme une application distincte de la ligne de commande. Il est possible d'invoquer à partir d'Eclipse, mais il est vraiment pas fait pour cela. Par exemple, le suivi des progrès et des rapports d'erreur ne fonctionnent pas bien.

Quelqu'un sait-il d'une bonne alternative pour cela?

Merci, Zviki

Était-ce utile?

La solution

dropins semble très proche de ce que vous voulez, surtout si elles ne sont que le téléchargement des bocaux sans les métadonnées associées (par exemple les métadonnées devra être généré automatiquement).

Vous pouvez envisager de définir une deuxième zone de dropins pour gérer vous-même. Jetez un oeil à ProfileSynchronizer dans org.eclipse.equinox.p2.reconciler.dropins, en particulier la méthode createProfileChangeRequest. Je pense que le comportement de désinstallation ne vous plaît pas est le résultat de la propriété IInstallableUnit.PROP_PROFILE_LOCKED_IU ajouté.

Les dropins sont réconciliés au démarrage, voir les p2.reconciler.dropins Activator.watchDropins (), vous pouvez probablement faire la même chose à partir de votre propre paquet regarder un autre dossier.

Autres conseils

Je suggère de déployer votre plugin comme un exécutable JAR. Le programme d'installation dans le JAR doit demander le répertoire Eclipse installer et déballer le plug-in au bon endroit (et quelques contrôles supplémentaires au besoin).

En option comprennent un petit plugin « chien de garde » qui ne dépend pas beaucoup et vérifie juste que vos correctement principales charges de plug-ins et affiche un message d'erreur utile que l'utilisateur peut envoyer un courriel à votre charge.

D'après les informations dans le bogue 311590 1 qui est référencé dans la commentaire de deprecation InstallCommand une alternative est peut-être d'utiliser des opérations P2 2 , 3 .

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top