Ho questa classe di testÈ possibile sostituire la versione dell'implementazione JAXB in Java JRE 1.6 SE?
import javax.xml.bind.annotation.XmlElement;
class CompileTest {
void foo(@XmlElement String in) {
}
}
mia versione java è
$ java -version
java version "1.6.0_23"
Java(TM) SE Runtime Environment (build 1.6.0_23-b05)
Java HotSpot(TM) Client VM (build 19.0-b09, mixed mode, sharing)
e quando provo a compilare quella classe mi sto
javac CompileTest.java
CompileTest.java:5: annotation type not applicable to this kind of declaration
void foo(@XmlElement String in) {
^
1 error
e questo è valido per Java 6 Quando ho provato ad aggiungere la nuova libreria JAXB al percorso della classe, non è stato d'aiuto. C'è un modo per risolvere questo?
javac -cp jaxb-api-2.2.4.jar CompileTest.java
L'errore è del compilatore, in effetti, da un diverso (più recente) versione della lingua. Quindi la sostituzione del barattolo non avrà alcun effetto. Solo curioso, perché non usi Java 6? – talonx
Non capisco. "... da una diversa (nuova) versione del linguaggio ...", cosa? "Solo curioso, perché non usi Java 6?" Io sono, forse dovrebbe essere Java 7, è perché non possiamo migrare da 6 a 7, mentre in realtà c'è Java 6 in produzione ... – Betlista
@Betlista - Domanda simile e una soluzione è su http://stackoverflow.com/ domande/8211420/xmlelement-annotation-dissallowed-with-webparam –