2017-08-10 3 views
1

Quelle est la meilleure façon de partager une plate-forme cible?Meilleure façon de partager une plate-forme cible pour le projet Eclipse RCP

E.g. avec le code source de certains projets RCP.

Je peux définir un fichier .target et le remplir avec des sites p2 distants et partager ce fichier. Le problème ici est d'abord, ces sites ont tendance à être très lent et peu fiable. Par expérience, la résolution d'une telle plate-forme cible échoue de temps en temps.

Une approche plus fiable et plus rapide (en termes de chargement de cette plate-forme cible) consiste à définir un répertoire local, qui contient tous les plugins et fonctionnalités.

Ce répertoire peut faire partie du référentiel source lui-même ou je peux fournir un site distant (rapide et fiable) à partir duquel je peux télécharger cette plate-forme cible à tout moment.

La difficulté ici est, comment puis-je traduire une liste de sites P2 dans un répertoire, qui contient ces plugins et fonctionnalités qui sont fournis par le site de mise à jour?

Lorsque I définit une plate-forme cible spécifique à partir de Eclipse, où ces artefacts sont-ils réellement enregistrés? Je suppose que je pourrais simplement copier ce répertoire.

Répondre

1

Malgré les référentiels Eclipse p2 parfois lents et malgré l'éditeur de plate-forme cible merdique, je recommande toujours d'utiliser .target fichiers. Ils sont faciles à partager car ils peuvent être stockés dans le référentiel du code source. Lors de la résolution d'une plate-forme cible, PDE met en cache les ensembles dans le répertoire .metadata/.plugins/org.eclipse.pde.core/.bundle_pool de l'espace de travail. L'utilisation de fichiers .target vous permet également d'utiliser Tycho comme outil de construction. Notez, cependant, que Tycho ne peut pas lire à partir des référentiels locaux (c'est-à-dire file://).

C'est la manière la plus courante et la plus acceptée de fournir des dépendances pour le développement de RCP/plug-in. Pour limiter les performances non fiables des référentiels Eclipse p2, vous pouvez choisir de spécifier les sites en miroir dans votre définition de plateforme cible.

Il y a aussi Target Platform Definition DSL and Generator que vous pourriez essayer comme remplacement si vous n'êtes pas satisfait de la fiabilité de l'éditeur de plateforme cible PDE.

+0

Le générateur de plate-forme cible est superbe, je vais essayer! L'éditeur de plate-forme cible est un cauchemar, je suis fortement d'accord. – kerner1000

+0

Nous utilisons Tycho pour construire le produit, néanmoins je pensais que Tycho ne pouvait pas gérer les fichiers '.target'. Nous définissons les référentiels manuellement via les entrées de référentiels de Maven. – kerner1000

+0

Nous utilisons également Oomph pour configurer un IDE de développeur, mais Oomph a des difficultés à utiliser une plateforme cible personnalisée. L'utilisation de fichiers locaux était également une solution de contournement pour cela. Pourriez-vous étendre votre réponse avec des informations sur la matérialisation d'une plateforme cible? – kerner1000