我在D:\TEST目录下创建一个helloworld.java 
在DOS下编译:javac d:\TEST\helloworld.java 
编译成功
在运行时用:java d:\TEST\helloworld 为什么不可以呢?
如果在d:\TEST>java helloworld为什么就能运行呢?我也知道用java -classpath d:\TEST helloworld可以运行!!

解决方案 »

  1.   

    在运行时用:java d:TEST.helloworld 就可以了。
    运行时不是用\而是用.
      

  2.   

    在运行时用:java d:\TEST\helloworld 为什么不可以呢? 
    如果在d:\TEST>java helloworld为什么就能运行呢?
    这些规定的东西没必要深究
    就象对外国人来说中国字为什么是图画一样
    呵呵    多了解下机制和原理 把
      

  3.   

    原因:java解析器找不到你要运行的class文件。
    解决办法:在环境变量的classpath中,加入【.;】(不要中括号),或者加入[d:\TEST];
    运行时,如果helloworld在缺省包中,则可直接执行java helloworld;
    如果helloword在某个特定包中【如package com.js991dj.test】,则执行时语句为:
    java com.js991dj.test.helloworld。
      

  4.   

    将路径转到D:\>TEST 在编译运行
      

  5.   

    改正:classpath 加入的应该是【d:TEST】
      

  6.   

    java解析器找不到你要运行的class文件。
    运行时只能写上java类的名字    不能加路径   
    编译的时候你找的是.java文件  可以加上寻找路径
    而运行的时候.java文件已经编译成为了.class文件
    这里是执行文件的命令     而不是先找到文件再执行文件的命令