一、错误
项目中用到加密jar包,单独在idea中运行项目时正常,通过mvn命令行运行时报错“java.lang.NoClassDefFoundError:sun/misc/BASE64Decoder”
二、排查原因
搜索之后发现 sun/misc/BASE64Encoder 这个东西仅在jdk1.8以及之前的版本存在,更高版本的jdk不存在了
一翻纠结
Mac下查看已安装的jdk版本及其安装目录
/usr/libexec/java_home -V
查看发现idea中有两个版本的jdk 8和11
在idea中直接运行项目时,项目设置的是jdk8,所以没有报错
通过mvn命令行运行时,通过【mvn - v】命令 查看到默认运行jdk11
三、解决方式
环境变量中配置了jdk8
再次查看当前 mvn
使用的 jdk
版本——已经切换到jdk8
文章来源:https://www.toymoban.com/news/detail-818267.html
再次mvn test运行项目 不再报错!文章来源地址https://www.toymoban.com/news/detail-818267.html
到了这里,关于maven运行时报错“java.lang.NoClassDefFoundError:sun/misc/BASE64Decoder”的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!