2013-05-21 3 views
2

J'utilise GlassFish-Web intégré pour les tests d'intégration à l'intérieur d'un projet Maven:En utilisant différentes EclipseLink que empaqueté dans embarqué GlassFish-Web

<dependency> 
     <groupId>org.glassfish.extras</groupId> 
     <artifactId>glassfish-embedded-web</artifactId> 
     <version>3.2-b06</version> 
     <scope>test</scope> 
    </dependency> 

GlassFish-Web intégré est livré avec EclipseLink 2.2.0, mais le projet nécessite des fonctionnalités de 2.4. Pour un déploiement régulier, ce problème résolu en ajoutant des pots à besoin JE répertoire de modules Glassfish et cette dépendance:

<dependency> 
     <groupId>org.eclipse.persistence</groupId> 
     <artifactId>org.eclipse.persistence.core</artifactId> 
     <version>2.4.1</version> 
     <scope>provided</scope> 
    </dependency> 

J'ai essayé de compiler également la portée, encore est utilisé EL 2.2.0 embarqué. L'ajout d'une dépendance de portée de test sur EL 2.4.1 n'aide pas. Est-ce qu'il y a un moyen de résoudre ceci?

+0

Avez-vous trouvé une solution réalisable? –

Répondre

0

Avez-vous essayé de spécifier la portée maven test? Sinon, il ne sera pas disponible pendant le test! Pour fournir cette version uniquement pour tester, vous pouvez utiliser des profils maven.

+0

J'ai essayé ça. La compilation entraîne l'erreur "package org.eclipse.persistence.annotations n'existe pas". Ce paquet est dans org.eclipse.persistence.core – Marek

+0

Oh désolé n'a pas lu que vous avez déjà essayé de compiler et de tester la portée. J'utilise le 'org.glassfish.main.extras: glassfish-embedded-all: 3.1.2.2' et il fonctionne quand j'utilise la portée fournie pour le lien eclipse. –

0

Je vois deux solutions possibles à ce problème: soit vous construire votre propre GlassFish-intégré ou que vous utilisez une approche de force brute et modifier le pot.

Sur la 1ère approche: Après avoir passé quelque temps à construire GF Je pensais que même avec mes shell dilettantisme compétences de script est plus facile d'utiliser seulement la deuxième approche au lieu de déterminer le code de GF. Cependant, si vous êtes en place pour celui-ci, je suggère de commencer à oracle wiki.

Sur la 2ème approche: Comme je l'ai mentionné ci-dessus, l'automatisation de cette tâche est la meilleure approche à mon avis (au moins si vous avez affaire à de nombreuses bibliothèques et des changements continus), donc j'écrit this script avec toutes les instructions nécessaires sur la façon de l'utiliser. Après avoir obtenu le nouveau pot juste install dans votre dépôt local. J'utilise Nexus donc pour moi c'était une question de boutons de couple se pressé.

P.S .: Tous les commentaires/conseils/améliorations sur le script sont les bienvenus.

Questions connexes