如果你用过Maven,可能听说过BOM,这是一个解决Java项目版本冲突的有效工具。
在早先的Gradle版本中,是没有原生BOM支持的,只能通过一些很蹩脚的方式引用Maven的BOM。
在5.0+后,提供了platform机制,可以更加"原生“的实现类似BOM的方法,而且更加简洁。
1 在Gradle中定义你的BOM
build.gradle
只有中间的dependencies部分是可能需要调整的
plugins {
id 'java-platform[......]
现象:使用codecs打开文件,写入UTF-8文本,正常无错误。用vim打开正常,但记事本、UE等打开乱码。
原因:一般写文本时,默认是没有BOM头的,即编辑器不知道这个文本文件是神马编码,只能智能detect,这个detect有的弱有的强,比如UE、记事本就挂了,认为是ASCII格式的,于是就乱码了。
解决方法:如果为了编辑器打开正常,可以加入BOM编码。但一定要慎重,一旦加入后,头部会增加2~3个字节,如果程序再读取,显然会出错。这个如果使用UE编辑过PHP代码抓过狂的都应该懂得[......]