2016-02-21 23 views
5

Dopo non essere riuscito a pacchetto mvn all'interno di Eclipse, ma riuscendo a terminale, mi resi conto che era in esecuzione Eclipse Maven 3.3.3 mentre il terminale è in esecuzione 3.3.9. Ho tentato, e con tutti gli apparenti account riusciti, di riconfigurare eclissi andando a Eclipse -> Preferences -> Maven -> Installations e puntando alla mia cartella 3.3.9. Ho riavviato Eclipse e riprovato ma non disponibile. Inoltre, le modifiche al file pom.xml non vengono riconosciute durante il tentativo di creazione. Ho inserito barre inappropriate e altri personaggi e sono in grado di generare questo errore solo:Impossibile modificare la versione Maven in Eclipse IDE

errore di montaggio GUERRA: è richiesto l'attributo web.xml (o pre-esistente WEB-INF/web.xml se l'esecuzione in modalità di aggiornamento)

ho modificato il mio file pom secondo this raccomandazione, ma come ho detto, Maven non riconosce le modifiche al pom e non riesco a correre mvn --version per produrre 3.3.9 come dovrebbe. Ho attaccato il mio pom.xml sotto

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 
<modelVersion>4.0.0</modelVersion> 
<groupId>com.javawebtutor</groupId> 
<artifactId>LoginWebApp</artifactId> 
<packaging>war</packaging> 
<version>1.0-SNAPSHOT</version> 
<name>LoginWebApp Maven Webapp</name> 
<url>http://maven.apache.org</url> 
<dependencies> 
    <dependency> 
     <groupId>javax.servlet</groupId> 
     <artifactId>servlet-api</artifactId> 
     <version>2.5</version> 
    </dependency> 
    <dependency> 
     <groupId>mysql</groupId> 
     <artifactId>mysql-connector-java</artifactId> 
     <version>5.1.30</version> 
    </dependency> 
    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <version>4.10</version> 
    </dependency> 
</dependencies> 
<build> 
    <finalName>LoginWebApp</finalName> 
    <plugins> 
    <plugin>    
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-war-plugin</artifactId> 
     <configuration> 
     <webXml>src\main\webapp\WEB-INF\web.xml</webXml>   
     </configuration> 
    </plugin> 
    </plugins> 
</build> 

+0

Prima non utilizzare indietro barre in un file pom, perché si può usare barre, invece, che è indipendente dalla piattaforma. Inoltre non è necessario impostare il percorso a 'web.xml' perché il default è averlo in' src/main/webapp/WEB-INF/web.xml' .... A parte questo se si ottiene il messaggio 'WAR: è richiesto l'attributo web.xml. Dovresti metterne uno nella posizione appropriata. Se sei sicuro di non averne bisogno, puoi ottenerlo utilizzando ' false' ... e molto importante. Definisci le versioni dei plugin che stai usando .... BTW .: Non vorrei mai inserire all'interno di Eclipse .. – khmarbaise

risposta

0

Normalmente è necessario reinstallare il plugin m2eclipse a correre con la versione corretta. Se è stato aggiornato, non funzionerà con quello precedente, poiché prenderà la "vecchia" versione di Maven.

7

Provare a configurare una configurazione di runtime o vedere se ne stai già utilizzando uno.

In eclissi, fare clic con il tasto destro del mouse sul progetto-> Esegui come-> Esegui configurazioni. Cerca la sezione m2 Maven Build a sinistra. Se ce n'è uno sotto il nome del tuo progetto, quindi modificalo, altrimenti creane uno. Nella parte inferiore della finestra c'è un menu a discesa che consente di selezionare quale configurazione Maven si desidera eseguire:

enter image description here

questo mi dà il seguente risultato:

Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11 10T11:41:47-05:00) 
Maven home: C:\Program Files\Java\apache-maven-3.3.9 
Java version: 1.7.0_80, vendor: Oracle Corporation 
Java home: C:\Program Files\Java\jdk1.7.0_80\jre 
Default locale: en_US, platform encoding: UTF-8 
OS name: "windows 8.1", version: "6.3", arch: "amd64", family: "windows"