qu'est-ce que Maven - & gt; Mettre à jour le projet ... exactement?
Je suis vraiment frustré à ce sujet:
Je suis en utilisant un projet maven, à l'aide de jdbc avec eclipselink. mvn install
fonctionne comme prévu. Jusqu'à ce que je dois changer le PW dans le persistence.xml. Quand je fais un mvn clean
et ensuite mvn install
le projet est cassé et le mal (ancien) persistence.xml est encore en usage. Dans eclipse, j'ai à faire un maven -> update project
(à l'aide de m2e addon) et mvn install
œuvres soudainement une fois de plus.
Maintenant mon problème: Sur le serveur de déploiement, je suis à l'aide de script en ligne de commande et je n'ai pas trouvé mvn XYZ
équivalent pour la m2e fonctionnalité...
Est-il un équivalent?
Explicite scénario:
Je développe sur mon local maschine (osx/win7) dans un projet maven importés dans eclipse. J'ai j'ai une interface de Persistance JPA qui encapsulent la connexion de base de données qui est réalisé grâce à eclipselink. Je peux déployer localement (mvn install
) mais après je lance mvn clean
et de changer le mot de passe dans persistence.xml
mvn install
n'est pas plus possible. Je viens d'obtenir classDefNotFound Persistor
dans les tests car il statiques initialiser l'EntityManager qui cant connect cause de la nouvelle persistence.xml
-- ou moins, à mon avis, parce que la stacktrace est pas vraiment utile. Mais, après maven -> update project...
dans eclipse sur le projet, mvn install
fonctionne à nouveau et le nouveau mot de passe (d'exécution des tests!).
Quand je veux déployer le projet sur une machine distante (debian, ligne de commande) je ne peux pas mvn install " la tiré du projet, provoquer, après j'ai changé le mot de passe dans persistence.xml pour le déploiement, son nouveau le mauvais persistence.xml ou au moins une partie de cache utilisé.
J'espère que le rendre un peu plus clair.
SOLUTION:
Assurez-vous que persistence.xml est placée dans le répertoire src/main/resources/META-INF et pas ailleurs. m2e captures persistence.xml de mauvais endroits (dans mon cas, le dossier src/main/java/META-INF). Donc, essentiellement, c'était juste une mauvaise structure du projet.
source d'informationauteur ThommyH
Vous devez vous connecter pour publier un commentaire.
Ressemble, vous pouvez utiliser
mvn eclipse:clean eclipse:eclipse
à régénérer le projet eclipse fichiers - l'espoir que sortes vous.maven projet de mise à jour de l'éclipse est différent, car il va générer une Dépendances Maven chemin de classe conteneur
mvn eclipse:eclipse génère une Bibliothèque Référencée Conteneur.