您的位置:首页 > 编程语言 > Java开发

Spring 的 jdk 版本检测在 jdk 8 下的修订:only available on JDK 1.5 and higher 错误

2017-08-01 00:00 471 查看

1、在项目中创建一个package为org.springframework.core

2、在该 package 下面新建 JdkVersion.java,内容如下:

package org.springframework.core;

public abstract class JdkVersion {
public static final int JAVA_13 = 0;
public static final int JAVA_14 = 1;
public static final int JAVA_15 = 2;
public static final int JAVA_16 = 3;
public static final int JAVA_17 = 4;
//for jre 1.8
public static final int JAVA_18 = 5;
private static final String javaVersion = System
.getProperty("java.version");
private static final int majorJavaVersion;
public static String getJavaVersion() {
return javaVersion;
}
public static int getMajorJavaVersion() {
return majorJavaVersion;
}
public static boolean isAtLeastJava14() {
return true;
}
public static boolean isAtLeastJava15() {
return getMajorJavaVersion() >= 2;
}
public static boolean isAtLeastJava16() {
return getMajorJavaVersion() >= 3;
}
static {
//for jre 1.8
if (javaVersion.indexOf("1.8.") != -1) {
majorJavaVersion = 5;
}else if (javaVersion.indexOf("1.7.") != -1) {
majorJavaVersion = 4;
} else if (javaVersion.indexOf("1.6.") != -1) {
majorJavaVersion = 3;
} else if (javaVersion.indexOf("1.5.") != -1) {
majorJavaVersion = 2;
} else {
majorJavaVersion = 1;
}
}
}

3、找到相应 jar 包(spring.jar,不同版本 jar 包可能不同)的类进行替换

用新编译出的 JdkVersion.class 文件替换 org.springframework.core 中的 JdkVersion.class 文件

**替换方法:**找到 jar 包,用解压缩软件打开,定位到相应目录,直接把 JdkVersion.class 文件拖进去覆盖。

参考链接:https://yq.aliyun.com/articles/1291
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Java Spring
相关文章推荐