【要求】
Briefly describe an error from your past projects that you have recently completed or an error from other projects which impress you most. State the reason, impact of the error and how did you find it.
【解答】
在上学期的考勤系统制作过程中,我们后台采用的是Spring Boot和Hibernate。在后台的编写过程中,使用Eclipse IDE ,载入了maven project。代码编写差不多的时候,一编译,就报错了许多 java.lang.UnsupportedClassVersionError
看报错信息,是因为使用的jar包版本不对。 上网搜索报错信息后,知道了原因是JDK不同的版本,编译出的class文件是不同的。通过查看分析class文件前几个字节,可以找到对应的关系,详细的参考官方,细微的版本之间可能有差异。
之后我查看了我的eclipse jdk的版本是1.6的,而实验所需jar包明确要求jdk是需要1.7。于是我上网下载了jdk 1.7,重新编译后错误排除了。
这个小错误给我的印象很深,因为编程的时候经常是只考虑逻辑呀,语句呀有没有错误,很可能忽略这种问题,由于版本不同造成的错误也是很难发现的。使用IDE报错还容易发现一些,以前也有因为MySQL版本不匹配造成错误的时候,就很难发现。