1.运行Tools工具中的Generate JavaDoc报错

想将项目生成一个帮助文档,结果生成doc时(如下图所示),


报下面错误

错误: 编码GBK的不可映射字符//鑾峰彇鍒板緟瑙f瀽鐨勫浘鐗?
  • 1
  • 2

解决方法

在生成DOC弹出的对话框中,在other command line argument中输入下面命令

-encoding utf-8 -charset utf-8
  • 1

如下图所示

完美解决上述问题,成功生成了doc文档。

2.原理解释

我的android studio中所有的代码文档都是用utf-8进行编码的,java在编译时会将uft-8编码的代码转化为unicode编码存入内存中。
这里要注意理清一个概念,JavaDoc.

JavaDoc 是用以提取注释的工具,Jdk安装的一部分。

android studio gradle里的默认编译的编码是utf-8的,而javadoc却是使用的当前电脑环境中的默认编码,即是GBK。

如果我们用的是英文,那utf-8与gbk的英文编码方式都是一样的。但一遇到中文就会报上述错误了,因为中文用的是utf-8的编码,而javadoc却用了gbk的编码去转换中文,所以就无法转换从而报错。

注: GBK中文占两个字节,utf-8中文(常用)占三个字节

因为代码中的注释部分包含了许多中文,而javadoc是会去编译这些注释从而生成HTML的帮助文档的,所以就会出现上述的编码GBK转换错误的报错。

3.解决问题时踩过的坑

1.在app的build.gradle里添加代码

添加如下代码到build.gradle中

tasks.withType(JavaCompile) {options.encoding = "UTF-8"
}
  • 1
  • 2
  • 3

生成doc时依然报错,这个方案应该是指代码的编译,而不适用于doc生成。

2.更改项目的编码

如下图,我将Project Encoding的编译换成了utf-8.依然报错

本身我的文档就都是utf-8编码的,只不过之前这里的Project Encoding是显示的系统默认(即GBK)。这个方案也是跟1一样,不适用于doc生成。

错误: 编码GBK的不可映射字符 - Android Studio 生成javadoc文档时报错相关推荐

  1. Android studio 生成JavaDoc文档

    Android studio 生成JavaDoc文档 1.Tools->Generate Javadoc 2.在other command line arguments项输入: -encodin ...

  2. 解决Android Studio Gradle 错误 编码GBK的不可映射字符

    今天刚学习Android Studio这个IDE来写代码,然后在代码中加了中文注释导致无法编译: 提示错误:"错误: 编码 GBK 的不可映射字符". 经过查资料发现以下方法可成功 ...

  3. 【错误记录】生成 Java 文档错误 ( Xxx.java:xx: 错误: 编码GBK的不可映射字符 )

    文章目录 一.报错信息 二.解决方案 一.报错信息 使用 javadoc 命令 , 生成 Java 文档 , 报错 ; javadoc Student.java D:\develop\javadoc& ...

  4. 基于Windows下处理Java错误:编码GBK的不可映射字符的解决方案

    基于Windows下处理Java错误:编码GBK的不可映射字符的解决方案 最近在研究Java,涉及命令行编译,使用notepad++编辑器,然后使用javac编译: 之前的几个文件没有中文的内容,都没 ...

  5. JAVA:错误: 编码GBK的不可映射字符;错误: 找不到或无法加载主类;

    目录 一.编码GBK的不可映射字符: 1.现象 2.解决方法 ANSI:ANSI是什么编码? - malecrab - 博客园 (cnblogs.com) 二.找不到或无法加载主类 一.编码GBK的不 ...

  6. java命令行编译运行遇到java:5: 错误: 编码GBK的不可映射字符 (涓変釜鏋勯?犲嚱鏁?)解决方法

    java命令行编译运行遇到java:5: 错误: 编码GBK的不可映射字符 (涓変釜鏋勯?犲嚱鏁?)解决方法 错误原因:使用简单javac 命令编译java文件,如果代码中存在中文,就算是注释有中文的 ...

  7. 【java】xxxxx.java:5: 错误: 编码 GBK 的不可映射字符_编译问题

    1.出现问题 xxxxx.java:5: 错误: 编码 GBK 的不可映射字符 (0x80) System.out.println("璇疯緭鍏ョ涓?涓拰灏氱殑韬珮锛?"); ...

  8. IDEA Generate JavaDoc时 控制台报错误: 编码GBK的不可映射字符

    一.生成JavaDoc 为了方便查看功能解释,除了使用Swagger-ui以外,还需要知道非控制器(controller)类的功能,比如Service.Resource等.于是尝试了一下IDEA的生成 ...

  9. java错误: 编码 GBK 的不可映射字符 (0x9C)

    java错误: 编码 GBK 的不可映射字符 (0x9C) 目录 java错误: 编码 GBK 的不可映射字符 (0x9C) 错误情况示例: 解决办法: 错误情况示例: E:\myJavaCode&g ...

最新文章

  1. 【组队学习】【34期】零基础学python编程思维
  2. 2017年本博客知识体系引导(更新至2017.8.11)
  3. c语言排序算法实际案例,[C语言] 部分经典排序算法详解(有图解)
  4. spring cloud Alibaba 的 Nacos学习笔记
  5. java 代码执行el,专属于java的漏洞——EL表达式注入
  6. python获取历史双色球数据_你的梦想,我来买单!Python分析双色球中奖号码竟成功获取特等奖
  7. 操作多台_一支热电偶能否连接多台显示仪表
  8. Oracle技术之O7_DICTIONARY_ACCESSIBILITY(二)
  9. Java构造方法的继承调用
  10. junetxtdb.class.php,PHP-site
  11. sap生产工单报工_SAP作业分割与作业价格计算说明
  12. windows安装pip包
  13. 【RobotStudio学习笔记】(十)模块化程序
  14. Shell脚本基础语法教程
  15. 如何从虚拟机复制文件到实体机
  16. 轻量级录屏软件 Captura 使用 ffmpeg 调用 NVDIA nvenc 录制小体积网课视频
  17. php工具下载 脚本之家,php脚本编辑工具题目
  18. CSS超链接标记大全
  19. php 腾讯云 短信验证码发送
  20. 第四章:前缀和、差分(数列)

热门文章

  1. vsftpd 配置-掉坑记
  2. Modern CMake 翻译 2.1 变量和缓存
  3. selenium+python设置爬虫代理IP的方法
  4. ie 代理设置中地址和端口置灰的解决办法
  5. sum() over (order by )
  6. hadoop安装单机配置
  7. OpenGL之显卡(二十六)
  8. Termux第一篇之ssh使用
  9. dumpsys命令用法
  10. android logo:内核、android开机动画