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 Java Discussion :

Ajouter par programmation un projet au workspace Eclipse


Sujet :

Eclipse Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2012
    Messages : 3
    Par défaut
    Bonjour,

    Je sais que lors de la création d'un projet avec l'IDE Eclipse, il crée dans celui-ci deux fichiers XML .classpath et .project, mais en plus de cela, il met à jour une série de fichiers binaire dans son dossier .metadata.

    Ma question est : Est-ce qu'il est possible par programmation, d'ajouter au workspace d'Eclipse un project Java existant (ou tout juste crée) sans devoir passer par l'utilisation de l'outil Import de l'IDE ? C'est à dire qu'après avoir utilisé ce dit programme, que le projet soit déjà présent dans le Package Explorer de l'IDE à l'ouverture de ce dernier.

    L'idée se serait de développer une task ant qui s'occuperait justement de réaliser l'opération. J'ai déjà utilisé un plugin "ant-eclipse", mais il se contentait de créer les fichiers .classpath et .project, il fallait encore ensuite faire l'import.

    Merci d'avance pour votre aide.

  2. #2
    Rédacteur/Modérateur
    Avatar de Laurent.B
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2004
    Messages
    3 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2004
    Messages : 3 468
    Par défaut
    Bonjour,

    A ma connaissance, de base rien ne permet de faire cela. Eclipse n'est pas "pilotable de l'extérieur".

    Il doit être possible de développer un plugin qui ajoute un nouveau projet sur détection d'une situation particulière... Ou peut-être que ça existe déjà mais à ce moment-là il faut chercher. En commençant par le Eclipse Marketplace.

    Cette problématique est relativement récurrente, surtout avec le développement d'applications modulaires, donc il est possible que ça existe.
    Responsable FAQ Eclipse | Maintiens et développe un des logiciels destinés aux rédacteurs sur developpez.com
    Gardons toujours à l'esprit que le forum constitue une base documentaire, dont l'utilité et la qualité dépendent du soin apporté à nos questions et nos réponses. Soyons polis, précis (dans le titre et dans le corps des questions), concis, constructifs et faisons de notre mieux pour respecter la langue française et sa grammaire. Merci pour nous (les modérateurs) mais aussi et surtout, merci pour vous.
    Problème solutionné => je vais au bas de la page et je clique sur le bouton (qui suite à mise à jour du forum, a légèrement changé d'aspect).

  3. #3
    Membre Expert
    Avatar de Gueritarish
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2007
    Messages
    1 800
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

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

    Informations forums :
    Inscription : Mai 2007
    Messages : 1 800
    Par défaut
    Salut,

    Tu parles d'"ant-eclipse", c'est pas plutôt "ant4eclipse"?

    Sinon, comme le dit Laurent, tu peux toujours créer une tâche qui te fera ça...

    Voilà, à+
    Gueritarish

  4. #4
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2012
    Messages : 3
    Par défaut
    Bonjour,

    Merci pour vous réponses.

    Non, non, je parle bien d'un plugin trouvé sur sourceforge intitulé ant-eclipse (à vrai dire, j'ai trouvé 2, créé par deux personnes différentes). Je n'ai plus le nom complet en tête.

    Le problème n'étant pas que je ne veux pas en développer un moi-même (ça me ferai même plaisir), mais plutôt que je ne trouves pas comment le faire . C'est pour cela que je suis venu voir si quelqu'un ne l'avait pas déjà fait et s'il ne pouvait pas me donner des pistes.

    Le vrai soucis est la modification de ces fichiers binaires propre à Eclipse qui, je parie servent notamment à faire reconnaitre un projet comme faisant parti du workspace.

    Bien à vous

    EDIT : En fait, je cherche autant un outil qu'un procédé de programmation

  5. #5
    Membre Expert
    Avatar de Gueritarish
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2007
    Messages
    1 800
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

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

    Informations forums :
    Inscription : Mai 2007
    Messages : 1 800
    Par défaut
    Salut,

    Dans les faits, côté programmation, il te "suffit" d'ajouter une dépendance vers org.eclipse.core.resources et d'appeler ce code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    IWorkspace workspace = ResourcesPlugin.getWorkspace();
    try
    {
    	IWorkspaceRoot workspaceRoot = workspace.getRoot();
    	IProjectDescription descr = workspace.loadProjectDescription(workspaceRoot.getLocation().append(myProjectName).append(".project"));
    	IProject project = workspaceRoot.getProject(myProjectName);
    	project.create(descr, new NullProgressMonitor());
    	// Attention, l'ouverture d'un projet peut prendre du temps...
    	project.open(new NullProgressMonitor());
    	// Après cette étape, le projet est dans le workspace et ouvert.
    } catch (CoreException ce)
    {
    	ce.printStackTrace();
    }
    Après, la question, c'est où ajouter ce code? Là, ça dépend de tes besoins. Tu peux le mettre dans une commande, un menu, un bouton dans la toolbar...
    En fait, je pense qu'il vaut mieux que tu codes l'ensemble de ton besoin dans le plug-in plutôt que de passer par un plug-in tiers (tu maîtriseras toutes les étapes du coup).

    Voilà, à+

  6. #6
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2012
    Messages : 3
    Par défaut
    Bonjour,

    Merci pour tes explications.

    La finalité, c'est juste que cela se trouve dans un plugin pour ant (une tache). Je testerai ce que tu m'as passé quand j'aurai un peu de temps et je vous tiens au courant.

    Encore merci, bonne journée

Discussions similaires

  1. L’accès par programme au projet Visual Basic n’est pas fiable
    Par wilfried_42 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 29/05/2011, 14h49
  2. Réponses: 6
    Dernier message: 26/03/2011, 20h14
  3. Ajouter source JAVA2SE au Projet/config d'Eclipse
    Par Javix dans le forum Eclipse
    Réponses: 3
    Dernier message: 21/10/2009, 22h38
  4. Réponses: 2
    Dernier message: 13/03/2008, 17h33
  5. Ajouter, par programme, un compte POP dans Outlook
    Par Fares BELHAOUAS dans le forum Outlook
    Réponses: 3
    Dernier message: 06/07/2007, 18h30

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