2012-10-09 4 views
0

J'utilise eclipse juno & maven 2.2.1.Répertoires de sortie Eclipse & Maven

Existe-t-il un moyen simple de séparer le dossier de sortie eclipse de celui de maven? Donc j'aimerais avoir la construction eclipse dans le répertoire cible et maven dans le répertoire target-maven.

J'ai essayé d'utiliser

<directory>target-maven</directory> 

dans le pom.xml.

Cela fonctionne très bien si je le fais après avoir créé le projet.
Mais lors de la récupération du projet à partir de svn (sans .classpath .target ... seul dossier src) suivi de eclipse: eclipse, tout se construit dans target-maven.

Répondre

1

Vous pouvez créer different profiles pour cela. Créez un profil mvn-eclipse pour Eclipse et mvn-cmd pour la ligne de commande où vous spécifiez différents répertoires cibles. Vous devez activer les profils dans les configurations de lancement Eclipse (sélectionnez Run as -> Maven Build ... et le champ Profiles) ou create two different settings.xml. Dans un vous spécifiez

<activeProfiles> 
    <activeProfile>mvn-eclipse</activeProfile> 
    </activeProfiles> 

et dans l'autre

<activeProfiles> 
    <activeProfile>mvn-cmd</activeProfile> 
    </activeProfiles> 

Vous devez nommer le fichier de paramètres qui contiennent mvn-cmd comme profil actif settings.xml, de sorte que vous ne devez pas apporter des modifications lors de l'utilisation maven sur la ligne de commande. Dans Eclipse, vous pouvez spécifier les paramètres via Preferences -> Maven -> User settings.

Cependant, je ne le recommande pas, car vous pourriez rencontrer des problèmes avec les deux dossiers de sortie qui ne sont pas synchronisés. Assurez-vous donc d'avoir une bonne raison pour cela.

+0

Ok, merci. Mais je ne sais pas comment faire ça. Ma bonne raison est que le projet a beaucoup de cas de test et je ne veux pas les exécuter chaque fois que je construis le projet. Donc j'utilise -Dmaven.test.skip = true. Mais si je fais un nettoyage, les classes de test sont nettoyées mais pas reconstruites. Donc, en éclipse si je veux exécuter un test simple, je dois éditer la classe, enregistrer, puis exécuter comme. – tweetysat

+0

Je ne pense pas que votre raison soit bonne. Une fois, nous sommes allés sur un chemin similaire qui a conduit à un projet qui était complètement dysfonctionnel après un certain temps, parce que tout le monde a exclu ses tests de la course. Si vos tests prennent trop de temps, vous rencontrez probablement un autre problème. Lorsque vous construisez normalement dans eclipse ces tests ne devraient pas être exécutés et vous ne devriez pas avoir de problème avec eux. – SpaceTrucker