2012-04-18 10 views
9

Poiché entrambi utilizzano la directory di destinazione, l'output di Eclipse a volte interferisce con l'output di mvn build eseguito sulla riga di comando.L'output di autocostruzione di Eclipse interagisce con l'output di generazione della riga di comando Maven

Qual è il modo migliore per separare le due uscite?

+0

ho una risposta per questa domanda, ma non possiamo ancora presentarlo a causa di restrizioni di StackOverflow - pubblicherà in otto ore –

+0

sto lavorando con Maven/Eclipse in combinazione e non hanno problemi con auto compilation ecc. Qual è il problema? – khmarbaise

+0

@khmarbaise - il problema è che quando CLI Maven pulisce la directory di destinazione, Eclipse inizia automaticamente la repoopulazione, che può quindi interferire con l'operazione di CLI Maven –

risposta

10

Inserire quanto segue nel proprio pom.xml. di Eclipse proprietà "m2e.version" attiverà il seguente profilo che altera la posizione della Eclipse costruire

<profiles> 
    <profile> 
    <id>IDE</id> 
    <activation> 
     <property> 
     <name>m2e.version</name> 
     </property> 
    </activation> 
    <build> 
     <!-- Put the IDE's build output in a folder other than target, so that IDE builds don't interact with Maven builds --> 
     <directory>target-ide</directory> 
    </build> 
    </profile> 
</profiles> 
1

modo ufficiale è presentato qui:
http://wiki.eclipse.org/M2E_FAQ#How_to_configure_Maven_project_to_use_separate_output_folders_in_Eclipse

Io personalmente non faccio qualcosa di simile. Di solito in genere disattivo auto-build in Eclipse poiché la maggior parte delle build faccio comunque dalla console. Ma se lo vuoi davvero, eccoti qui.

+1

Grazie Michal. Il mio approccio consiste nell'utilizzare un profilo che imposta una directory di compilazione diversa, attivata dall'esistenza della proprietà m2e.version. Quindi nessuna modifica richiesta alle proprietà del progetto Eclipse. –

+1

Sì, anche questo dovrebbe funzionare ed è ancora più semplice. –

0

Se si utilizza Maven-eclipse-plugin invece di m2eclipse, ecco la definizione che si desidera, al fine di modificare l'Eclipse directory di output:

<plugin> 
    <artifactId>maven-eclipse-plugin</artifactId> 
    <version>2.9</version> 
    <configuration> 
    <buildOutputDirectory>target-eclipse/classes</buildOutputDirectory> 
    <downloadSources>true</downloadSources> 
    <downloadJavadocs>true</downloadJavadocs> 
    </configuration> 
</plugin> 
Problemi correlati