IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Eclipse Platform Discussion :

Plug-in installable par update site - erreur à l'installation - problème de configuration plug-ins packagés


Sujet :

Eclipse Platform

  1. #1
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut Plug-in installable par update site - erreur à l'installation - problème de configuration plug-ins packagés
    Bonjour,

    J'ai fait un plug-in (d'intégration), pour Eclipse for JEE Developpers, écrit initialement avec Mars.2, et pour ses déploiement et mise à jour, j'utilise un "update site". Ce matin un nouveau dévelopeur me signale une erreur à l'installation avec ce message :
    An error occurred while collecting items to be installed
    session context was:(profile=epp.package.jee, phase=org.eclipse.equinox.internal.p2.engine.phases.Collect, operand=, action=).
    No repository found containing: osgi.bundle,org.apache.commons.io,2.4.0
    En cherchant un peu sur le net, je comprends (ou croit comprendre) que le problème vient des plug-ins Eclipse sur lesquels j'ai des dépendances qui ne sont pas à jour dans la version packagée fraichement téléchargée de Mars.2. J'ai indiqué au développeur qu'il fallait qu'il lance un "check for updates" avant d'installer mon plug-in, et l'installation c'est bien passée après cette procédure, ce qui a priori confirme mon interprétation du problème. Les différentes forums que j'ai trouvés parlant du sujet parlent d'un mauvais paramétrage des "update sites" des plug-ins. Déjà, ça me semble bizarre d'avoir à paramétrer dans ma configuration d'update-site à moi les urls des updates sites des plug-ins standard d'un Eclipse packagé sur lesquelles j'ai des dépendances, mais soit, admettons. Seulement, je ne trouve nulle part de documentation qui me dise comment faire.

    J'imagine que le souci est dû au fait que j'ai développé avec une version déjà mise à jour et, donc, quand j'ai importé la dépendance, la version mise à jour a été marquée comme version minimum. Il est possible que je puisse modifier la version minimale pour revenir à la version incluse dans le package, mais je trouve ça un peu fastidieux.

    Par ailleurs, les développeurs préfèrent rester pour le moment en Mars.2 en attendant que la recette Neon.2 soit validée. Je n'ai pas vu de mention de version dans les forums parlant de cette erreur, et, donc, je n'arrive pas à savoir si ce problème a été réglé depuis Mars.2 (ça me semblerait logique de ne pas avoir à s'occuper des configurations de mise à jour de plug-ins que Eclipse sait très bien mettre à jour de lui-même tout seul comme un grand).
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  2. #2
    Membre émérite
    Avatar de Mickael_Istria
    Homme Profil pro
    Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Inscrit en
    Juillet 2008
    Messages
    1 469
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 469
    Points : 2 997
    Points
    2 997
    Par défaut
    Tes diagnostics semblent bons.
    Dans Mars.2, la version de org.apache.common.io installlee par default est la 2.2; or ta feature semble dependre (transitivement peut-etre) de la version 2.4, qui n'est pas visible pour les utilisateurs d'Eclipse Mars.2.
    Tu as 3 solutions, par ordre de preference:
    1. Changer la dependance dans ton code de la version 2.4 a la version [2.2.0,3.0.0). Comme 2.4 est compatible avec 2.2, ton plugin s'installera dans Mars en utilisant 2.2 et dans Neon en utilisant 2.4.
    2. Inclure dans ton update site la version qui va bien d'org.apache.commons.io (2.4.0), comme ca, quel que soit l'Eclipse "hote" qui installe, il est sur de trouver la dependance directement sur le repo.
    3. Mettre un lien de ton repo p2 vers le repo Orbit de Neon, qui include une version assez recente de commons-io


    Il est possible que je puisse modifier la version minimale pour revenir à la version incluse dans le package, mais je trouve ça un peu fastidieux.
    C'est a mon avis la meilleure solution.
    Pour du HTML, CSS, JavaScript, TypeScript, JSon, Yaml, Node... dans Eclipse IDE, installe Eclipse Wild Web Developer
    Pour du Rust dans Eclipse IDE, installe Eclipse Corrosion
    Follow me on twitter

  3. #3
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Salut Mickael,

    Merci de me répondre.

    Citation Envoyé par Mickael_Istria Voir le message
    1 - Changer la dependance dans ton code de la version 2.4 a la version [2.2.0,3.0.0). Comme 2.4 est compatible avec 2.2, ton plugin s'installera dans Mars en utilisant 2.2 et dans Neon en utilisant 2.4.
    Je voulais trouver une solution "générale". Je ne sais pas si j'utilise quelque chose de particulier de la 2.4. Je suppose que j'ai ajouté cette dépendance alors que j'avais déjà mis à jour mon Mars.2, sans pour autant savoir si j'ai besoin de la 2.4 ou si la 2.2 est suffidante. Si j'impose la dépendance sur la 2.2 et qu'un "client" installe le plug-in sur un Mars.2 standard sans faire d'update, il risque d'avoir des plantages (bien sûr je pourrais toujours conseiller de faire de toute manière un "Check updates".

    Citation Envoyé par Mickael_Istria Voir le message
    2- Inclure dans ton update site la version qui va bien d'org.apache.commons.io (2.4.0), comme ca, quel que soit l'Eclipse "hote" qui installe, il est sur de trouver la dependance directement sur le repo.
    Je voudrais éviter au maximum d'ajouter des éléménts qui ne soient pas directement de ma production. Déjà, ça m'obligerait à gérer éventuellement les upgrades (je suppose que je pourrais peut-être éventuellement gérer ça automatiquement, genre via maven, mais ça me gène quand même).


    Citation Envoyé par Mickael_Istria Voir le message
    3 - Mettre un lien de ton repo p2 vers le repo Orbit de Neon, qui include une version assez recente de commons-io
    De toute manière, au final, je vais migrer vers Neon, le problème devrait donc ne plus se poser pour le cas de commons-io. Mais je cherchais une solution dans ce genre-là, ou mieux, genre une simple option à activer qui fasse que mon plug-in, voire l'update de mon plug-in, impose en prérequise un "check update" de Eclipse pour les plug-ins non présents (en réalité, je m'attendrais à ce que ça le fasse tout seul : genre Eclipse se rend compte que le plug-in demande une dépendance sur un plug-in qui est obsolète localement, Eclipse interroge pour ce plug-in son update-site pour voir si la bonne version est présente sur le repo et fait l'update le cas-échéant.
    Cela dit, comment fait-on pour inclure ce type de lien ?

    Au final, la solution la plus simple qui fonctionne à tous les coups est d'inclure dans la documentation d'installation la mention "Faire un "Check updates"" avant l'installation du plug-in
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  4. #4
    Membre émérite
    Avatar de Mickael_Istria
    Homme Profil pro
    Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Inscrit en
    Juillet 2008
    Messages
    1 469
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 469
    Points : 2 997
    Points
    2 997
    Par défaut
    [QUOTE]Cela dit, comment fait-on pour inclure ce type de lien ?[/QUOTE[
    https://bugs.eclipse.org/bugs/show_bug.cgi?id=453708#c9

    [QUOTE]Au final, la solution la plus simple qui fonctionne à tous les coups est d'inclure dans la documentation d'installation la mention "Faire un "Check updates"" avant l'installation du plug-in [/QUOTE[
    Bah justement, ca marchera pas forcement a tous les coups. "Check for updates" ne cherche des updates que dans les update-sites qui sont deja enregistres dans l'IDE. Donc si aucun de repos p2 "actifs" ne contient la bonne version, alors "Check for updates" ne fera pas d'update de ce bundle.
    Pour du HTML, CSS, JavaScript, TypeScript, JSon, Yaml, Node... dans Eclipse IDE, installe Eclipse Wild Web Developer
    Pour du Rust dans Eclipse IDE, installe Eclipse Corrosion
    Follow me on twitter

  5. #5
    Membre émérite
    Avatar de Mickael_Istria
    Homme Profil pro
    Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Inscrit en
    Juillet 2008
    Messages
    1 469
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 469
    Points : 2 997
    Points
    2 997
    Par défaut
    Cela dit, comment fait-on pour inclure ce type de lien ?
    https://bugs.eclipse.org/bugs/show_bug.cgi?id=453708#c9

    Au final, la solution la plus simple qui fonctionne à tous les coups est d'inclure dans la documentation d'installation la mention "Faire un "Check updates"" avant l'installation du plug-in
    Bah justement, ca marchera pas forcement a tous les coups. "Check for updates" ne cherche des updates que dans les update-sites qui sont deja enregistres dans l'IDE. Donc si aucun de repos p2 "actifs" ne contient la bonne version, alors "Check for updates" ne fera pas d'update de ce bundle.
    Pour du HTML, CSS, JavaScript, TypeScript, JSon, Yaml, Node... dans Eclipse IDE, installe Eclipse Wild Web Developer
    Pour du Rust dans Eclipse IDE, installe Eclipse Corrosion
    Follow me on twitter

Discussions similaires

  1. Réponses: 1
    Dernier message: 05/05/2016, 11h00
  2. Plugin Eclipse ne fonctionnant pas par l'update site
    Par Samildanach dans le forum Eclipse Platform
    Réponses: 3
    Dernier message: 18/05/2009, 11h52
  3. Erreur DVIout sur install.par
    Par hydredelerne dans le forum Distributions
    Réponses: 2
    Dernier message: 05/02/2009, 14h48
  4. [Joomla!] Erreur à l'installation de template sur site distant
    Par Siguillaume dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 29/09/2008, 16h52
  5. installer plug in par "remote site" impossible?
    Par decksroy dans le forum Eclipse Java
    Réponses: 7
    Dernier message: 09/10/2006, 15h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo