Question

p2 tâches de fourmi , il est assez simple à refléter les plug-ins pour une fonction.

Mais comment puis-je miroite tout le nécessaire pour installer une fonctionnalité?

Était-ce utile?

La solution

Impossible d'obtenir le travail du p2.mirror; la tâche soit des miroirs trop (comme toutes les versions d'une fonction, même si vous ne souhaitez que le dernier ou un spécifique) et / ou trop peu (comme juste la fonctionnalité, mais aucune des dépendances).

Ma solution était comme ceci:

  1. Déballez Eclipse à eclipse-template
  2. Créer une copie comme eclipse-install
  3. Installez la fonction dans eclipse-install
  4. Supprimer un fichier dans la copie qui existe dans la version de l'étape 1 (cd eclipse-template ; find . -type f -exec rm "../eclipse-install/{}").

Que vous laisse avec la fonctionnalité et les fichiers plugin. Utilisez org.eclipse.equinox.p2.publisher.FeaturesAndBundlesPublisher pour le transformer en une prise en pension p2 ( voir la documentation pour plus de détails).

[Mise à jour 2011-11-01] Il y a une autre solution si vous n'avez pas besoin d'exécuter ce à partir de la ligne de commande.

  1. Créer une « Définition cible » dans un projet Eclipse (créer un nouveau ou utiliser un existant, peu importe)
  2. Ajouter des sites de mise à jour à ce fichier * .target
  3. Sélectionnez les fonctions que vous voulez
  4. Cliquez sur le petit bouton « Exporter » dans le coin supérieur droit de l'éditeur de définition de la cible (à côté de « Définir comme plate-forme cible »)

Ce exportera toutes les fonctionnalités sélectionnées avec la version exacte que vous avez sélectionné ainsi que toutes les dépendances dans un dossier de votre choix.

L'éditeur cible est un peu maladroit et lent de, mais cela fonctionne.

Conserver le fichier sous contrôle de version parce que l'éditeur cible salit parfois.

Autres conseils

J'utilise le code suivant pour Ant miroir 2 fonctions dans un seul référentiel:

<!-- Creates single p2 repo from 2 repos -->
<p2.mirror>
    <repository location="file:///${DESTINATION}/repo-name" append="false"/>
    <source>
       <repository location="file:///${feature1-repo}/feature1"/>
       <repository location="file:///${feature2-repo}/feature2"/>
    </source>
</p2.mirror>

vous pouvez utiliser le plus <iu> et id de la fonction de spécifier la fonction à miroir. Caractéristiques id doit être spécifié de la manière suivante:

your.feature.id.group.group.group 

Si vous avez des configurations spécifiques à votre plateforme caractéristique, l'IU devient

your.feature.id.win32.win32.x86 (OS, Widget system, Architecture)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top