(1)package不要起名java.tools
Exception in thread "main" java.lang.SecurityException: Prohibited package name: java.tools
比如改为:java2.tools
(2)不知道你这个Hello.java文件是放在哪儿,姑且测试是在G:\java2\tools下
(3)不需要设置任何环境变量,因为java.exe在系统目录下有一个拷贝,并且在注册表中有信息,但javac等没有拷贝,这时你可能需要设置一个java_home或者直接把javac.exe全路径提出来
在tools文件夹下执行:%java_home%/bin/javac Hello.java,是能编译成功的
(4)运行java命令,你得回到位置G:,它根据package来找类的
这时运行:
java java2.tools.Hello
或者
java -cp .java2.tools.Hello
这样是不对的:
java -cp G:\java2\tools java2.tools.Hello
它是指在f:\java2\tools下运行java命令,找不到。可改为:
java -cp .;G:\java2\tools java2.tools.Hello
你的Hello类是建在java.tools包下吗,如果是则应该没问题,如果不是,直接删除package第一句,你又没有用到包下的类,无需导入
我也碰到过同样的问题,是环境变量的缘故,Path=C:\Program Files\Java\jdk1.6.0_16\bin;
JAVA_HOME=C:\Program Files\Java\jdk1.6.0_16;
其他的你以前设置的都删掉,我的意思也就是说让环境变量回到初始状态,而你现在出现这个错误就是因为环境变量有误。
希望对你有用!
classpath不对,需要加上 jre/lib/rt.jar(具体的路径为你的java安装路径)
然后cmd进入到java.tools的java所在目录
java java.tools.Hello
除了设置classpath以外,还要设置path,应该是系统参数没设好,建议上网找找看