我们在开发java应用的时候,最终都编译会生成class文件,
编译使用的jdk版本和运行的jdk版本不一致,会报出错误。
最可怕的时候,有时候由于项目不规范,会出现如下场景:
1. 使用jdk版本1,工程编译生成class
2. 中间出现bug,直接在本地修改好,然后编译生成class文件
替换掉生产/测试环境中的某些classes文件
这个时候可能会导致如下悲惨的事情发生:
1. 程序无法启动
2. 程序正常启动,但是会有错误日志出现
3. 程序正常启动,由于错误日志没有输出,导致没有任何错误日志出来,
但是运行结果错的。
最可怕的是产生第三种结果。
总结:1. 项目的发布规范要注意
最好是每次都在发布机器上面下载所有源代码,然后统一编译打包发布
2. 项目的异常日志输出一定要写
编译使用的jdk版本和运行的jdk版本不一致,会报出错误。
最可怕的时候,有时候由于项目不规范,会出现如下场景:
1. 使用jdk版本1,工程编译生成class
2. 中间出现bug,直接在本地修改好,然后编译生成class文件
替换掉生产/测试环境中的某些classes文件
这个时候可能会导致如下悲惨的事情发生:
1. 程序无法启动
2. 程序正常启动,但是会有错误日志出现
3. 程序正常启动,由于错误日志没有输出,导致没有任何错误日志出来,
但是运行结果错的。
最可怕的是产生第三种结果。
总结:1. 项目的发布规范要注意
最好是每次都在发布机器上面下载所有源代码,然后统一编译打包发布
2. 项目的异常日志输出一定要写