`
bhw1015
  • 浏览: 90173 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

用ant编译时,出现"警告:编码 GBK 的不可映射字符"提示

阅读更多

这是因为:由于JDK是国际版的,在编译的时候,如果我们没有用-encoding参数指定我们的JAVA源程序的编码格式,则javac.exe首先获得我们操作系统默认采用的编码格式,也即在编译java程序时,若我们不指定源程序文件的编码格式,JDK首先获得操作系统的file.encoding参数(它保存的就是操作系统默认的编码格式,如WIN2k,它的值为GBK),然后JDK就把我们的java源程序从file.encoding编码格式转化为JAVA内部默认的UNICODE格式放入内存中。然后,javac把转换后的unicode格式的文件进行编译成.class类文件,此时.class文件是UNICODE编码的,它暂放在内存中,紧接着,JDK将此以UNICODE编码的编译后的class文件保存到我们的操作系统中形成我们见到的.class文件。对我们来说,我们最终获得的.class文件是内容以UNICODE编码格式保存的类文件,它内部包含我们源程序中的中文字符串,只不过此时它己经由file.encoding格式转化为UNICODE格式了。当我们不加设置就编译时,相当于使用了参数:javac -encoding gbk XX.java,当然就会出现不兼容的情况

 

需要个javac指定编码,于是在build.xml中加入以下说明即可:

<target name="compile" depends="prepare" description="编绎">
   <javac srcdir="${src.dir}" destdir="${build.classes.dir}" debug="on" deprecation="on" optimize="off" includes="**">
    <!--给编译器指定编码,防止出现:"警告: 编码 GBK 的不可映射字符"-->
   <compilerarg line="-encoding UTF-8 "/>  
    <classpath refid="build.classpath" />
   </javac>
</target>

分享到:
评论

相关推荐

    ant打包时编码 GBK 的不可映射字符.txt

    ### ant打包时编码 GBK 的不可映射字符 #### 背景介绍 在软件开发过程中,使用构建工具如Ant来自动化编译、打包等任务是十分常见的做法。但是,在处理包含非ASCII字符(例如中文)的源代码时,可能会遇到字符编码...

    Ant编译utf-8非法字符:\\65279

    标题“Ant编译utf-8非法字符:\\65279”涉及到的是在使用Apache Ant工具进行Java项目编译时遇到的一个字符编码问题。Ant是Java开发中的一个构建工具,它通过XML定义的构建文件来自动化构建过程,如编译、打包、测试...

    ant编译命令总结

    Apache Ant 编译命令总结 Apache Ant 是一个基于 Java 的生成工具,主要用来将源代码和其他输入文件转换为可执行文件的形式,或者转换为可安装的产品映像形式。Ant 在软件开发中扮演着重要角色,确保在每次生成期间...

    使用Ant编译打包

    Ant使用XML来描述构建过程,包括编译、测试、打包和部署等任务,使得开发者能够通过简单的脚本进行项目构建,而无需深入理解复杂的命令行语法。 **一、Ant的安装与配置** 1. **下载与解压**:首先,你需要从Apache...

    ant脚本编译jar

    在Java开发过程中,打包和部署是必不可少的环节,而`Ant`作为一个强大的构建工具,能够帮助我们自动化这些任务。本文将深入探讨如何使用`Ant`脚本来编译并创建一个`JAR`文件,以此来理解`Ant`脚本的工作原理和实际...

    ant编译1.9版本

    Apache Ant是Java开发中不可或缺的自动化构建工具,它在软件工程领域扮演着重要角色,尤其在构建、测试和部署过程中。Ant以其XML为基础的构建文件(通常命名为build.xml)著称,这种文件定义了项目构建的各个任务和...

    ant编译依赖包

    在编译Java项目时,Ant使用`&lt;javac&gt;`任务来编译源代码。你需要指定源代码目录(srcdir)、编译后的输出目录(destdir),以及任何需要的类路径(classpath)。例如: ```xml ``` 接下来,我们可以创建...

    Ant编译后的zookeeper源码

    在这个案例中,使用Apache Ant 1.9.14对ZooKeeper进行了编译,生成了可供开发者进一步研究和使用的源码。 导入Eclipse或IntelliJ IDEA是为了便于Java开发者进行代码浏览、调试和开发工作。Eclipse是一款强大的开源...

    ant编译java工程

    标题 "ant编译java工程" 涉及到的是使用Apache Ant工具来构建Java应用程序的过程。Apache Ant是一个基于XML的构建工具,它允许开发者通过声明式的方式定义项目构建任务,而不是采用程序化的方式。在Java开发中,Ant...

    ant编译java web工程build.xml配置文件

    介绍了如何通过ant进行java web工程的编译操作的详细配置

    ant编译以及格式

    4. **编译源代码**:Ant使用`&lt;javac&gt;`任务来编译Java源代码。你需要指定源代码目录、输出目录以及任何必要的编译器选项。例如: ```xml ${src.dir}" destdir="${build.dir}"&gt; **/*.jar"/&gt; ``` 这将...

    使用ant编译生成flex的swc文件

    本文将深入探讨如何使用Ant工具来编译生成Flex的SWC文件,以此解决传统方式带来的繁琐和不便。 首先,让我们了解基本概念。`Ant`是一款由Apache软件基金会开发的Java构建工具,它基于XML编写构建脚本,可以跨平台...

    Ant编译环境配置.pdf

    Ant编译环境配置 文章《使用ant编译之签名问题》的相关资料。主要讲一些Ant编译问题。

    使用ant编译之签名问题1

    ### 使用Ant进行编译及其签名问题详解 #### 一、Ant编译技术概述 Ant是一种Java平台下的构建工具,主要用于自动化构建过程中的编译、测试、打包等任务。使用Ant进行编译相比于传统的Eclipse IDE编译有诸多优势,...

    .Ant安装编译操作手册

    - **编写目的**:本文档旨在指导软件发布人员如何正确安装与配置Apache Ant,解决在安装与使用过程中可能遇到的问题,确保能够顺利地使用Ant对Flex/Java工程项目进行自动化编译与打包。 #### 二、环境说明 - **Ant...

    ant编译时抛出OutOfMemoryError.doc

    在使用Apache Ant构建Java项目时,可能会遇到一个常见的问题,即`OutOfMemoryError`。这个错误通常发生在编译大量Java源文件时,由于资源耗尽,JVM无法分配足够的内存来执行任务。`OutOfMemoryError`是Java运行时...

    ant打包编译全套资料

    Ant以其灵活性和可扩展性,通过XML格式的构建文件(build.xml)来定义任务,使得开发者能够自动化执行各种构建过程。 在Ant中,"标签"是构建文件的核心元素,它们定义了具体的任务和操作。例如,`&lt;project&gt;`标签是...

    Android Ant编译环境配置(Win)

    - 特殊情况下,若 `ant clean` 也失败,可尝试使用 `ant clear` 命令来彻底清理项目。 #### 五、其他注意事项 - **备注**:除了上述步骤外,还应确保 Android SDK 和 Build Tools 已经安装并配置正确。 - **常用...

    ant递归编译测试源码

    在Java开发过程中,构建工具是不可或缺的一部分,它们帮助开发者自动化执行任务,如编译、测试、打包等。Ant是Apache组织提供的一款强大的构建工具,它使用XML来描述项目构建过程,具有灵活性和可扩展性。本篇将深入...

Global site tag (gtag.js) - Google Analytics