当前位置: 首页 > 知识库问答 >
问题:

gradle javadoc在UTF-8字符上失败,仅在windows上

慕高格
2023-03-14

所以我有一个基于gradle的java项目,有大量匈牙利文档字符串,这意味着很多非ASCII字符。

这是完全好的,因为javac在源代码中使用utf-8字符,而根据我的知识,javadoc也应该使用。

在构建中,gradle有一个创建java doc jar的任务

task javadocJar(type: Jar, dependsOn: javadoc) {
    classifier = 'javadoc'
    from javadoc.destinationDir
}

artifacts {
    archives sourcesJar
    archives javadocJar
}

当我运行gradle build时,它会失败,出现以下错误:

:compileJava C:\home\projects\inventorycore\src\main\java\hu\rfit\inventory\model\entities\itemstate.java:11:错误:编码Cp1252*?ru/term kíllapot的不可映射字符。^:processResources最新:classes:jar:javadoc c:\home\projects\inventorycore\src\main\java\hu\rfit\inventory\model\entities\itemstate.java:11:error:编码Cp1252的不可映射字符*?ru/term kíllapot。^1错误:Javadoc失败

失败:生成失败,出现异常。错误:任务“:javadoc”执行失败。Javadoc生成失败。生成的Javadoc选项文件(用于故障排除):“C:\home\projects\inventorycore\build\tmp\Javadoc\Javadoc.options”

最棒的是它在构建管道中运行得很好,而在我的其他操作系统(ubuntu 16.04 lts)上,它只在Windows上失败。

我已经尝试了git repo的一个新克隆,将java jdk更新到了最新版本(oracle jdk 1.8.0131之前是A73和A111两种版本都尝试过)。项目中的所有文件都是utf-8编码的,并且还尝试将javadoc设置放入我的build.gradle文件中,

javadoc {
    options.charSet = 'UTF-8'
}

共有1个答案

倪风史
2023-03-14

我怀疑你想

options.encoding = 'UTF-8'

这将与以下的javadoc帮助文本相匹配:

-encoding <name>                 Source file encoding name

...而charset似乎会影响输出。(我希望它已经默认为UTF-8。)

 类似资料:
  • 我正在尝试用utf-8语言保存文本(希伯来语-阿拉伯语-等等)但它失败了。。首先,它给了我(???)所以我把它放在数据源中。groovy dbCreate=“update”url=“jdbc:mysql://localhost/db_name?useUnicode=yes 它给了我一个错误 错误。JDBCException记者-非法混合排序规则(latin1_swedish_ci,IMPLICIT

  • 安装工作良好,JDK也被发现没有问题。安装后,程序不会启动。双击图标不会发生任何事情。作为管理员开始,或者安装“只为我”或为所有用户都没有区别。我找不到答案。这可能是一个常见的问题吗?

  • 问题内容: 我目前正在从事一个项目,我不使用常规的MySQL查询,而是继续学习如何使用PDO。 我有一个称为参赛者的表,数据库,表和所有列均位于utf-8中。我的参赛者表中有10个条目,而它们的“名称”列中包含诸如åäö之类的字符。 现在,当我从数据库中获取一个条目并使用var_dump的名称时,我得到了一个很好的结果,即一个包含所有特殊字符的字符串。但是我需要做的是按字符分割字符串,将它们放入数

  • 我试图在windows server上安装Elasticsearch 7.16.2,但在安装过程中,我发现以下错误。 安装服务:"elasticsearch-service-x64"使用ES_JAVA_HOME(64-bit):"C:\Program Files\Java\jdk-17.0.1"-Dhs_err_pid=60;-D1m=10;-XX: AlwaysPreTouch;-Xsses.n

  • Windows---------------: Linux---------- 那么,什么是主要的原因是这个问题,看起来一切都好从其他的选择 Apache Maven 3.6.0(97C98EC64A1FDFEE7767CE5FFB20918DA4F719F3;2018-10-24T14:41:47-04:00)Maven主页:/home/user/tools/Maven/apache-maven

  • 我已经试过几次了,但我不知道问题出在哪里。难道我们不能在windows 8.1中使用android studios吗?我所有的开发工作都卡住了…请帮忙