java - 在注释中使用不可映射的字符构建项目?

标签 java android macos ant compiler-errors

我正在尝试构建 Android Permission Explorer来自源代码。我使用 svn checkout http://android-permission-explorer.googlecode.com/svn/ 进行了 checkout 。我在 checkout 项目后添加了一个基本的 build.xml ,然后放入终端:

$ /usr/local/bin/ant release
...
-compile:
    [javac] Compiling 14 source files to .../android-permission-explorer/bin/classes
    [javac] .../android-permission-explorer/src/com/carlocriniti/android/permission_explorer/ApplicationDetail.java:7: error: unmappable character for encoding UTF-8
    [javac]  * Activit� d'affichage du d�tail d'une application
...

错误是编码UTF-8时无法映射的字符

这是 ApplicationDetail.java 中的违规行(这对我来说毫无意义,因为它是一条注释):

/*
 * Projet   : Permission Explorer
 * Auteur   : Carlo Criniti
 * Date     : 2011.06.10
 * 
 * Classe ApplicationDetail
 * ActivitÈ d'affichage du dÈtail d'une application
 * avec les permissions qu'elle utilise
 */

类似的错误还有很多。如果 /usr/local/bin/ant release 2>&1 | grep -i 错误 | wc -l 是准确的,那么就有 103 个。

问题:为什么评论中的字符会影响构建?

我已经阅读了 ant 的文档 Writing a Simple BuildfileProperty Task ,但是该死的,如果我能弄清楚如何设置源文件语言。

问题:如何在 build.xml 中设置源文件语言?

最佳答案

即使它们在注释中,无效字符也会导致编译器错误:源代码通常在转换为字节码之前进行预处理,并且编译器刚刚遇到未映射到其的字符字符集。

最简单的方法是编辑源文件并以 UTF-8 编码保存。由于这是一条评论,因此删除该角色可能也没什么坏处。

关于java - 在注释中使用不可映射的字符构建项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28521122/

相关文章:

c - 在 Mac OS X 上编译 ncurses 应用程序时出错

java - NetBeans 不会在 "Projects" View 下显示静态 Web 文件

java - 在Java类中获取网页

java - java中读取xml文件时出错

java - Hibernate 中的日期注解

android - 编译 native_app_glue.c 导致库文件无效

android - 更改基于设备的位图大小 Android Studio

android java正则表达式命名组

objective-c - 10.6.3 os x 更新破坏了 Nestopia 的模拟按键

objective-c - 监控沙盒应用程序中的文件夹