2013-10-16 15 views
10

Ho un progetto Maven che danno i seguenti due erroriPerché errore Eclipse Kepler SR1 con: JAX-RS 2.0 richiede Java 1.7 o più recente

JAX-RS (REST Web Services) 2.0 non può essere installato: One o più vincoli non sono stati soddisfatti.
JAX-RS (REST Web Services) 2.0 richiede Java 1.7 o successivo.

devo JDK 1.6 installato (non posso cambiare questo)

Le sfaccettature progetto non deve JAX-RS spuntato.

Le facce del progetto hanno java 1.6 impostato.

Le faccette del progetto sono impostate su Dynamic Web Project 2.4.

ho plugin seguenti

Sonar 3.2.0 MercurialEclipse 2.10 EclEmma 2.2.1

Il pom.xml è proprio questo ...

<?xml version="1.0" encoding="UTF-8"?> 
<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.pcmsgroup.v21.esi</groupId> 
    <artifactId>customerservice-war</artifactId> 
    <version>2.0.0-SNAPSHOT</version> 
</project> 

il web.xml è

<?xml version="1.0" encoding="UTF-8"?> 
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> 
    <display-name>Customer Service</display-name> 
</web-app> 

Pulizia o "Aggiornamento Ma ven Project "non fa differenza.

Nota: questo è in eclipse-jee-kepler-SR1-win32-x86_64. Nota: la versione eclipse-jee-kepler-win32-x86_64 non fornisce l'errore.

Nota: il nuovo spazio di lavoro non modifica l'errore.

Nota: sto usando JDK.1.6.0_43

L'unico errore che posso vedere relative a questo nel file "log" è ..

INGRESSO org.eclipse.osgi 2! 1 2013/10/16 15: 07: 58,816 mESSAGGIO NLS messaggio inutilizzato: JaxrsProjectConfigurator_The_project_does_not_contain_required_facets in: org.eclipse.m2e.wtp.jaxrs.internal.messages

Aggiunta l'aspetto, non lo lascerà applico da quando si dice Ho bisogno di Java 1.7

JSR339 (JSR339) afferma "L'API farà ampio uso di annotazioni e richiederà richiedere J2SE 6.0 o successivo"

Qualche idea?

+0

Hai creato un nuovo spazio di lavoro: hai cancellato i vecchi '.settings' e' .project'? – artbristol

+0

sì, ho creato un nuovo spazio di lavoro e controllo di nuovo il progetto. Contiene solo ".project", nessuna cartella delle impostazioni. se cancello .project allora non sarò in grado di importare il progetto (e non ha alcuna menzione di jax) –

risposta

9

Eliminare il file .project e escluderlo dal controllo sorgente. Invece di usare Importa -> Progetto esistente, usa Importa -> Progetto Maven e lascia che m2e configura il tuo progetto Eclipse.

+0

FANTASTICO! grazie –

+1

+1 per il suggerimento su cosa c'era di sbagliato, sebbene Import-> Progetto Maven non ha funzionato per me. Ho dovuto ecnissi: eclipse quindi Importa-> Generale-> Progetto esistente. Allora Voila! –

+0

artbristol's way non ha funzionato per me, ma Jeffrey ha fatto ... – Kawu

9

È un bug, risolto in Luna se non SR2. http://bugs.eclipse.org/416704

+0

grazie, se potessi raddoppiare le risposte 'tick', allora saresti ticchettato! –

+0

spot on! risolto anche il mio problema – bytefire

0

Se l'intenzione è di eliminare questi errori, è sufficiente fare clic con il pulsante destro del mouse sugli errori nella "Vista marcatore" e fare clic su Elimina.

0

So che non puoi cambiare il tuo 1.6 JDK, ma la seguente soluzione potrebbe aiutare altre persone:

Nel mio caso, ho sia JDK 1.6 che 1.7. Ho provato diverse soluzioni suggerite senza alcun successo.

Quindi, a mio pom.xml ho cambiato dal JDK 1.6 di JDK 1.7:

<plugin> 
<groupId>org.apache.maven.plugins</groupId> 
<artifactId>maven-compiler-plugin</artifactId> 
<version>3.0</version> 
    <configuration> 
     <source>1.7</source> 
     <target>1.7</target> 
    </configuration> 
</plugin> 

Utilizzando JDK 1.7 ha lavorato per me, anche se nelle mie sfaccettature, è situato il 1.6 (perché la mia intenzione era uso JDK 1.6).