因此,我有一个小应用程序(不是在web容器中运行),它使用一些运行在jdk8上的javax.*类。升级到jdk17的时候到了。所以我想,很简单,我下载了jakarta 9(或10)参考实现.jar文件,切换到javax代码中。到雅加达。*命名空间,我们就可以开始了。似乎我找不到可以下载jakarta 9(或10)的参考实现*jar文件的地方。所以很明显我漏掉了什么。有人能引导我找到解决这个问题的好方法吗?
发布于 2022-05-13 14:09:09
我主要使用maven来处理我的依赖关系,但希望这至少有一点帮助。
对于jaxb 3.x,可以使用以下api依赖项
<dependency>
<groupId>jakarta.xml.bind</groupId>
<artifactId>jakarta.xml.bind-api</artifactId>
<version>3.0.1</version>
</dependency>然后,对于实现,您可以使用以下内容。
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>3.0.0</version>
</dependency>如果需要从xsd生成类,可以使用jaxb2-maven-plugin 3.1.0。它似乎只依赖于jakarta.xml.bin-API,而将rest作为嵌套依赖项。
<!--
by default searches schemas from src/main/xsd
and binding files from src/main/xjb
-->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxb2-maven-plugin</artifactId>
<version>3.1.0</version>
<executions>
<execution>
<id>xjc</id>
<goals>
<goal>xjc</goal>
</goals>
</execution>
</executions>
<configuration>
<packageName>com.example.api</packageName>
</configuration>
</plugin>不确定javax.activation
https://stackoverflow.com/questions/72159654
复制相似问题