JDK11 升级问题解决

作者:徐森林 于 2020年05月20日 发布在分类/ 运维

1,Event Log 错误:  Error running 'Application': Command line is too long. Shorten command line for   Application or also for Spring Boot   default   configuration   .

解决方法:

Run => Edit Configurations => Choose Node on the left hand side => expand Environment => Shorten Command line options => choose Classpath file or JAR manifest

2,IDEA 切换JDK

3,  Swagger Spring API - xmlModelPlugin Error    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'xmlModelPlugin': Lookup method resolution failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [springfox.documentation.schema.XmlModelPlugin] from ClassLoader [jdk.internal.loader.ClassLoaders$AppClassLoader@2437c6dc]

解决方法:

手动使用Maven 引入jaxb-api jar包

1
2
3
4
5
<dependency>
        <groupId>javax.xml.bind</groupId>
        <artifactId>jaxb-api</artifactId>
        <version>2.3.0</version>
</dependency>

4, maven-compiler-plugin 编译版本升级到Java11

1
2
3
4
5
6
7
8
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.8.0</version>
    <configuration>
        <release>11</release>
    </configuration>
</plugin>

5, lombok 关键字var和jdk11冲突


6,OpenJDK11调用docker镜像中的字体(freetype)找不到,例如:easyexcel 组件生 成Excel 模板

Caused by: java.lang.UnsatisfiedLinkError: /usr/local/jdk-11.0.2/lib/libfontmanager.so: libfreetype.so.6: cannot open shared object file: No such file or directory

解决方法:

创建镜像时,使用如下命令安装所需字体

# sudo yum install fontconfig freetype libfreetype.so.6

7,jdk1.8 项目依赖编译jdk11的api模块出现编译出错的问题

解决方法:jdk11编译的项目,api 模块统一指定通过jdk1.8编译

1
2
3
4
5
6
7
8
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
        <source>8</source>
        <target>8</target>
    </configuration>
</plugin>

8,JDK 内部API被移除, 手动使用Maven 引入  (常规解决方法)

     8.1  Error:(3, 48) java: 程序包com.sun.org.apache.bcel.internal.generic不存在

解决方法:

1
2
3
4
5
<dependency>
    <groupId>com.sun.org.apache</groupId>
    <artifactId>jaxp-ri</artifactId>
    <version>1.4</version>
</dependency>

   8.2,Error: java.xml.ws.*某类找不到

1
2
3
4
5
<dependency>
    <groupId>javax.xml.ws</groupId>
    <artifactId>jaxws-api</artifactId>
    <version>2.3.1</version>
</dependency>


9,openjdk11 压缩包下载,见下面关联资源;其他环境可以通过链接下载http://jdk.java.net/archive/

10,低版本Intellij Idea 不支持JDK11 需要升级,不要使用Intellij Idea 默认的jdk11 。2019版安装包见关联资源(破解方法见readme.txt)


分享到朋友圈 分享到微信
发表评论
验证码