问题描述:

在用公司的工具搭建项目时,由于使用Spring框架,同时要求jdk版本为1.8;当部署完成以后,项目总是无法运行,会报错:

Context namespace element ‘annotation-config’ and its parser class [org.springframework.context.annotation.AnnotationConfigBeanDefinitionParser] are only available on JDK 1.5 and higher

刚开始解决的时候,花了很长时间都遇到各种问题,后来,静下心来,慢慢一步一步逐条解决,最后终于解决了问题,现在项目已经可以正常运行;

将自己解决的方式做记录,留待以后参考。


1:首先,我们在项目中新建一个包(package),包名:org.springframework.core;

2:然后,我们在新建的包下面新建一个Java类(class),类名JdkVersion.java;

3:编辑新建的类:

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; 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 { 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;
}
}
}

4:编辑完类以后,找到项目路径:WEB-INF/classes;找到对应package中的.class文件;

即:org.springframework.core 包下的JdkVersion.class文件。

5:将项目中的spring.jar拷贝出来打开,然后将JdkVersion.class替换jar包中的该文件。

6:将修改后的spring.jar再覆盖到项目中。

在运行完Java类之后,我由于好奇,特别想查看一下.class类文件里的内容,然后就开始寻找各种方式查看编译后的文件。

苍天不负有心人,花了一些时间,终于找到了一个网上在线查看编译文件的网站。

贴出来备录:

编译后的class文件查看

最新文章

  1. Javascript 优化项目代码技巧之语言基础(一)
  2. PHPCMS几个有用的全局函数
  3. 2014-09-19.xml
  4. jQuery.cookie.js
  5. 在Mac OS X中使用VIM开发STM32(4)
  6. 问题与对策:CSS的margin塌陷(collapse)
  7. js获取url?后的参数
  8. vs2013配置opencv环境
  9. ACM_并查集
  10. scrapy中的request
  11. .Net Core中Dapper的使用详解
  12. ORM版学员管理系统 2
  13. angularJS 路由加载js controller 未定义 解决方案
  14. django-form介绍
  15. C语言四舍五入
  16. Linux基础命令---文本编辑sed
  17. 开发JSP自定义标签
  18. Rsync服务介绍与配置
  19. 关于面向对象和String类型的 09,10
  20. 设计模式(Python)-简单工厂,工厂方法和抽象工厂模式

热门文章

  1. 配置NFS实现nginx动静分离
  2. Kali实现靶机远程控制
  3. gcc/g++命令参数
  4. vue 过滤器 filter 的使用
  5. 杭电OJ1062---Text Reverse(c++)(C++库getline的使用)
  6. Github 简单使用
  7. MySQL 集群知识点整理
  8. Flink SQL结合Kafka、Elasticsearch、Kibana实时分析电商用户行为
  9. 【Oracle】DRM官方介绍
  10. CTFhub刷题记录