有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

编译类名中带有特殊字符的Java文件时发生javac错误

我在编译类名中带有特殊字符的源文件时遇到了一个问题。类文件在EclipseIDE中可以很好地编译,但不是从javac编译的。我相信我需要利用-encoding标志,但还没有达到正确的设置。如有任何建议,我将不胜感激:

文件名:DeptView和SDO。爪哇

Java源代码:

public interface DeptView\u548cSDO {

   public int getDeptno();

   public void setDeptno(int value);

}

错误消息:

运行javac *.java会导致以下错误消息:

javac: file not found: DeptView?SDO.java

更新

  • 我目前正在Windows XP命令提示符下尝试编译
  • 最终,这个编译需要是ant构建的一部分,在不同的操作系统上运行
  • 我使用生成此生成的源文件的工具

共 (2) 个答案

  1. # 1 楼答案

    你试过使用-encoding UTF8-encoding UTF16LE(小尾端)或-encoding UTF16BE(大尾端)吗?(LE或BE的使用取决于您使用的Windows系统,我记得它是LE。)

  2. # 2 楼答案

    一种解决方案是在一个单独的文件中列出每个编译单元的文件名,例如files,并将@files作为命令行参数传递给javac。否则,您必须设置shell的区域设置,以便它使用正确的字符编码