《Java编程思想(第四版)》上的一道习题:编写一个程序,打印出从命令行获得的三个参数。为此,需要确定命令行数组中的String的下标。
    源代码如下:    public class CommandArgTest {
public static void main(String[] args) {
System.out.println("args[0] = " + args[0]);
System.out.println("args[1] = " + args[1]);
System.out.println("args[2] = " + args[2]);
}
    }    用javac CommandArgTest.java test1 test2 test3编译时,出现错误:仅当显式请求注释处理时才接受类名称"test1 test2 test3"。
    网上的说法各种各样,有说jdk的路径不对,但其他的程序没出现过类似的错误,所以应该不是这个问题;有的说使用或覆盖了已过时的API,用-Xlint:deprecation编译,但还是无法解决。
    还有-Xlint:deprecation到底什么意思,只知道-Xlint:deprecation是“输出使用已过时的 API 的源位置”的意思。
    头都大了,请大家帮忙了。

解决方案 »

  1.   

    你用Eclipse吧  在运行设置里面有一个框里面可以写运行时要传入的参数 
      

  2.   

    javac是编译,这时不需要给参数
    运行时候:java CommandArgTest test1 test2 test3
      

  3.   

    编译时只需要 javac CommandArgTest.java 就可以了
      

  4.   

    这个是在命令行窗口中进行编译的,平常是在MyEclipse中写,能方便点。
      

  5.   

    javac是编译器,把源文件转换成字节码文件,这是一个编译过程,不需要传参数。
    楼上的说的都很在理。
      

  6.   

    我也正在重温这本书,建议还是用myeclipse,特殊的例子才去命令行,这样效率高点
      

  7.   

    编译javac不需要给参数 运行时java才带上参数
      

  8.   

    恩,讲得挺好的,不仅有怎么做还有为什么,不过看到后面有些吃力,像类型信息和后面的东西,可能是编码太少了,这两天先写写前面的东西,复习复习。用MyEclipse的确方便,我也一直在用,不过不是太熟悉,觉得这个问题可能在IDE里也能有输入的地方,但是没找到。