问题
从数据库查出某字段(text类型)数据,通过编写程序解析转换做处理,程序编写完成编译时报错:
Error: java:常量字符串过长
解决
查询资料发现,原因是javac在编译期间,常量字符串最大长度为65534。
可在Preference->Build,Execution,Deployment->Compiler->Java Compiler
菜单,Use compiler
下拉列表里,
由默认的Javac
修改为Eclipse
,程序能成功编译运行。
注意
如果不是新建project单独编写小程序,而是直接在项目中使用这种方式,当项目里有用到lombok组件,使用了@Slf4j
注解,
编译会报错提示log cannot be resolved
,因此项目中还是需要保持Javac
的编译方式。
可换个思路,将整个长字符串拷贝到文件中,通过java io或FileUtil
以读取文件的方式来解析处理。
参考
- 常量字符串过长 https://www.cnblogs.com/Marydon20170307/p/13590092.html
- ServiceConfigurationError: javax.annotation.processing.Processor报错 https://blog.csdn.net/u014714147/article/details/121019201