DerInputStream.getLength(): lengthTag=111, too big maven插件惹的祸@TOC
调用微信退款接口异常
使用微信退款接口时,加载证书报错:
DerInputStream.getLength(): lengthTag=111, too big。
经过问题排查发现:
证书文件放在项目的src/main/resources路径下
由于使用了maven插件maven-resources-plugin
该插件会修改管理目录下的资源文件,造成证书文件发生变更,使用的使用就造成了如题的错误。
处理方案:
1 将证书移出到项目外边,不在maven资源插件的管理目录下。
2 修改插件配置,设置证书文件例外
<groupId>org.apache.maven.plugins</groupId><artifactId>maven-resources-plugin</artifactId><configuration><encoding>UTF-8</encoding><!-- 过滤后缀为pem、pfx的证书文件 -->**<nonFilteredFileExtensions><nonFilteredFileExtension>pem</nonFilteredFileExtension><nonFilteredFileExtension>pfx</nonFilteredFileExtension><nonFilteredFileExtension>p12</nonFilteredFileExtension></nonFilteredFileExtensions>**</configuration>
src/main/resources**/*.p12**false**