`

[转载]关于javac编译时出现“非法字符:\65279”的解决方法

阅读更多
关于javac编译时出现“非法字符:\65279”的解决方法

一般用UE或记事本编辑过的UTF-8的文件头会加入BOM标识,该标识由3个char组成。在UTF-8的标准里该BOM标识是可有可无的,Sun 的javac 在编译带有BOM的UTF-8的格式的文件时会出现“非法字符:\65279”的错误,但是用Eclipse进行编译却没有问题,原因在于Eclipse使用的是自己的JDT,而非javac,关于JDT的描述可以到eclipse的官网上去查看。

出现这种情况时,有两种解决方法:
a) 利用UE、Editplus等文本编辑器重新保存文件为不带BOM的UTF-8格式
b) 可使用eclipse自带的编译器进行编译
<!--在ant中添加property,使用eclipse jdt compiler编译-->
<property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter" />
相关jar包,在eclipse安装文件plugins目录下:org.eclipse.jdt.core_xxx.jar,xxx为版本号
分享到:
评论

相关推荐

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

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

    javac 编译出现 软件包 javax.servlet.http 不存在

    NULL 博文链接:https://xjg396.iteye.com/blog/1973026

    javac编译成功用java运行class文件出现“找不到或无法加载主类”的问题解决起来很简单.doc

    "解决 Java 编译成功后运行 Class 文件出现“找不到或无法加载主类”的问题" 在 Java 开发中,经常会遇到一个问题,即 javac 编译成功后,用 java 运行 Class 文件却出现“找不到或无法加载主类”的错误信息。这种...

    javac源代码,java具体编译步骤

    Java 编译器`javac`是Java程序开发的核心组件之一,它负责将开发者用Java编写的各种源代码文件(.java)转换成可执行的字节码文件(.class)。这个过程涉及到许多编译阶段,包括词法分析、语法分析、语义分析以及...

    javac_可以编译目录.rar

    5. **命令行选项增强**:javac 命令行选项得到了扩展,如 `-release` 选项允许指定目标运行时版本,确保编译出的代码与特定 JDK 兼容。此外,还新增了 `-Werror` 选项,将警告视为错误,有助于提升代码质量。 6. **...

    javac的词法分析,转载自:百度文库

    每个状态对应一种可能的词法模式,当读到特定的字符时,词法分析器会切换到相应的状态。 **词法分析的重要性** 词法分析对于编译器来说至关重要,因为它为后续的语法分析和语义分析提供了基础。如果词法分析出错,...

    JAVAC动态编译

    `Proxy`类允许我们在运行时创建一个新的类,该类实现了指定的接口,并可以在调用方法时插入自定义逻辑。以下是一个简单的动态代理示例: ```java import java.lang.reflect.InvocationHandler; import java.lang....

    javac 源码 javac 源码

    Java 提供了注解(Annotation)机制,javac 支持注解处理器,这些处理器可以在编译时运行,对源码进行修改或生成额外的类文件。 6. **编译选项**: javac 命令行支持多种选项,如 `-g` 用于添加调试信息,`-...

    Java零基础 - 使用javac编译Java程序.md

    这是因为`javac`默认情况下只会在出现错误时才输出信息。如果没有错误信息,说明程序已经成功编译。 #### 5. 检查编译结果 最后一步是验证编译是否成功。最简单的方法是检查编译后是否生成了一个名为`HelloWorld....

    Android源码编译make的各类错误解决方案汇总

    Android源码编译make错误解决方案汇总 Android源码编译make过程中经常会遇到各种错误,这篇文章将总结各种常见错误的解决方案。 错误一:Java版本不正确 编译Android源码时,make命令可能会报错,提示您使用了...

    Dos环境下使用javac编译与java执行多个包下的.java文件

    在DOS环境下使用`javac`编译与`java`执行多个包下的`.java`文件是一项常见的Java开发任务。这通常涉及到对项目结构的理解、命令行操作以及掌握Java的编译和运行流程。下面我们将详细讲解这个过程。 首先,我们需要...

    编译时出现java.lang.OutOfMemoryError Java heap space异常

    ### 编译时出现java.lang.OutOfMemoryError Java heap space异常 #### 一、问题概述 在进行Java项目编译的过程中,可能会遇到`java.lang.OutOfMemoryError: Java heap space`这种异常。这类异常通常表明Java虚拟机...

    针对javac的命令错误,jdk环境变量设置方法

    ### 针对javac的命令错误,jdk环境变量设置方法 在开发Java应用程序时,开发者可能会遇到“javac不是内部或外部命令”的错误提示。这种情况通常发生在刚刚安装完Java Development Kit (JDK) 并尝试编译Java代码时。...

    java编译的javac.jar

    java编译的javac.jar

    javac不是内部或外部命令解决

    当你尝试在命令行中使用javac命令来编译Java源代码时,如果系统弹出“'javac'不是内部或外部命令,也不是可运行的程序或批处理文件”这样的错误信息,这表明你的计算机系统尚未找到javac可执行文件的位置。...

    javac 的 源 代 码

    3. 符号表(Symbol Table):在编译过程中,javac维护一个符号表,存储变量、类、方法等标识符的信息。这有助于查找并解决引用错误。 4. 代码生成(Code Generation):经过前面的步骤,javac将AST转换为字节码,这...

    java与javac命令详解

    Java 与 javac 命令详解 Java 和 javac 命令是 Java 语言的基本组成部分,它们在 Java ...通过这些例子,我们可以看到 Java 和 javac 命令的使用方法和规则,以及它们在 Java 应用程序的编译和执行过程中的重要作用。

    javac源码免费下载

    Java编译器(javac)是Java开发工具包(JDK)的核心组件,它负责将编写好的Java源代码(.java文件)转换成Java字节码(.class文件),使得...此外,对javac源码的深入学习也是提升编程技能和问题解决能力的有效途径。

Global site tag (gtag.js) - Google Analytics