Kompilierungsfehler: Java 11-Paket javax.xml.bind nicht gefunden
Beim Versuch, ein Java-Projekt mit Java 11 zu erstellen, kann es sein, dass Sie Es tritt ein Kompilierungsfehler auf, der besagt, dass das Paket javax.xml.bind nicht existiert. Dieser Fehler tritt auf, weil die Java EE-Module in Java 11 entfernt wurden, einschließlich JAXB (Java XML Binding).
Lösung: Verwenden Sie alternative Abhängigkeiten
Um das Problem zu beheben, Es müssen alternative Versionen der Java EE-Technologien verwendet werden. Fügen Sie Ihrem Projekt die folgenden Maven-Abhängigkeiten hinzu:
<code class="xml"><dependency> <groupId>javax.xml.bind</groupId> <artifactId>jaxb-api</artifactId> <version>2.3.0</version> </dependency> <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-core</artifactId> <version>2.3.0</version> </dependency> <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-impl</artifactId> <version>2.3.0</version> </dependency></code>
Jakarta EE 8 und spätere Updates
Anstatt die alten JAXB-Module zu verwenden, können Sie auch Jakarta XML verwenden Bindung ab Jakarta EE 8 oder höher:
Jakarta EE 8 (März 2020)
<code class="xml"><dependency> <groupId>jakarta.xml.bind</groupId> <artifactId>jakarta.xml.bind-api</artifactId> <version>2.3.3</version> </dependency> <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-impl</artifactId> <version>2.3.3</version> <scope>runtime</scope> </dependency></code>
Jakarta EE 9 (November 2020)
<code class="xml"><dependency> <groupId>jakarta.xml.bind</groupId> <artifactId>jakarta.xml.bind-api</artifactId> <version>3.0.0</version> </dependency> <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-impl</artifactId> <version>3.0.0</version> <scope>runtime</scope> </dependency></code>
Jakarta EE 10 (Juni 2022)
<code class="xml"><dependency> <groupId>jakarta.xml.bind</groupId> <artifactId>jakarta.xml.bind-api</artifactId> <version>4.0.0</version> </dependency> <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-impl</artifactId> <version>4.0.0</version> <scope>runtime</scope> </dependency></code>
Hinweis: Für Jakarta EE 9 und höher aktualisieren Sie die zu verwendenden Importanweisungen der Namespace jakarta.xml.bind anstelle von javax.xml.bind.
Das obige ist der detaillierte Inhalt vonWie behebe ich den Kompilierungsfehler „Paket javax.xml.bind nicht gefunden“ in Java 11?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!