java编译错误:编码GBK的不可映射字符

java编译错误:编码GBK的不可映射字符_第1张图片
在gradle项目中,编译项目时,如上报“ 错误: 编码GBK的不可映 射字符” 。这是因为在gradle项目中,默认使用的是系统的字符编码,而windows系统的中文系统是GBK编码。我在这个项目中,设置的是UTF-8编码,才导致上图的报错信息。这种情况下,解决方案是给gradle项目设置编码。
在gradle项目支持中,有以下方案可以设置gradle项目的编码:

   **方案一**:在build.gradle配置方案中添加编码设置的代码,如下:
			       tasks.withType(JavaCompile) {  
					    options.encoding = "UTF-8"  
					}
					如下图:
					![在这里插入图片描述](https://img-blog.csdnimg.cn/20190216104539815.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2OTU2MDE1,size_16,color_FFFFFF,t_70)	这样,项目打包时,java文件就会以UTF-8编码编译正常了。

方案二:

     将gradle的默认编码修改为UTF-8,使所有项目的java编码都是统一UTF-8编码,而不用每个项目进行配置。 
 到gradle安装目录D:\Java\gradle-4.8.1\bin目录下的gradle.bat文件,修改12行附近的代码为
       **set DEFAULT_JVM_OPTS="Dfile.encoding=UTF-8"**
     
     同时使用notepad++之类的软件打开gradle文件,编辑第10行左右的代码为
       **set DEFAULT_JVM_OPTS="Dfile.encoding=UTF-8"**
       
     这样就将gradle默认字符编码修改为UTF-8了

由于项目的发布编码不一定是固定不变的,需要程序员编译调试和灵活设置,通常使用方案一。

你可能感兴趣的:(技术解决方案,技术问题解决方案)