提问者:小点点

迁移到雅加达EE10-第三方命名空间


我目前正在尝试将我们的产品从JakartaEE8迁移到JakartaEE10。根据Jakarta API的命名空间更改,我决定使用intellij迁移工具。之后,当我尝试构建应用程序时,我发现了以下问题。

我们使用的是具有类的第3方依赖项,比如说Person。特定类的所有构造函数都抛出javax. active.MimeTypeParseException

我们有一个类学生它扩展了类Person所以迁移后,我们的类正在从新的命名空间导入异常类-

import jakarta.activation.MimeTypeParseException;

public class Student extends Person {

  public Student(String name) throws MimeTypeParseException {
    super(name);
  }
}

拥有这样的构造函数,调用super会抛出错误:未处理的异常javax. active.MimeTypeParseException

我尝试使用最新版本的第3方包,但它仍然使用旧的Javax命名空间。

有人有类似的经历吗?或者你知道如何解决这个问题,而无需下载第三方并迁移其代码?


共1个答案

匿名用户

如果有人会遇到这个问题,我已经找到了一个工具,可以帮助解决这个问题,如果你有一个第三方。jar文件。

Transformer工具在.jar存档中提供重命名包。重命名在配置文件中定义(例如jakarta-renames.properties),因此您可以自定义它们。对我来说,默认设置就足够了。

克隆和构建Transformer后,您可以从终端运行它:

java -jar ~/org.eclipse.transformer.cli-0.6.0-SNAPSHOT.jar 3rdparty.jar updatedJar.jar -tr jakarta-renames.properties