java 编译通过,运行时,找不到或无法加载主类
javacd:\hello.java//执行后什么都没有javad:\hello//执行后找不到或无法加载主类d:\hello我在d盘里找到了hello.class这是什...
javac d:\hello.java //执行后什么都没有
java d:\hello //执行后 找不到或无法加载主类d:\hello
我在d盘里找到了hello.class
这是什么情况??要怎么弄? 展开
java d:\hello //执行后 找不到或无法加载主类d:\hello
我在d盘里找到了hello.class
这是什么情况??要怎么弄? 展开
2个回答
展开全部
你把cmd的当前目录切换到d盘(cd d:),然后在用java hello
java后边跟的这个参数(hello)应该是你想要运行的类的完整名称(含包名),而且不应包含路径,所以你加上"d:"就会提示找不到主类,因为它把"d:\hello"认为是类的名称了,而你的类名应该是hello,所以只要去掉"d:\"就能运行了。
之所以要切换到d盘是因为你的类(hello)所在目录是“d:\”,而java在寻找类时会从环境变量调取classpath变量,然后逐个查找你要运行的类。如果没设置classpath的话,默认是jdk所包含的运行时环境目录以及当前目录,就是“.”,所以如果你把"d:\"添加到环境变量classpath中的话就能在任意位置执行你编译好的在d:盘的那个hello.class文件,反之就只能将cmd的目录切换到hello.class所在目录在执行java hello。
说了这么多不知道你明白没。
java后边跟的这个参数(hello)应该是你想要运行的类的完整名称(含包名),而且不应包含路径,所以你加上"d:"就会提示找不到主类,因为它把"d:\hello"认为是类的名称了,而你的类名应该是hello,所以只要去掉"d:\"就能运行了。
之所以要切换到d盘是因为你的类(hello)所在目录是“d:\”,而java在寻找类时会从环境变量调取classpath变量,然后逐个查找你要运行的类。如果没设置classpath的话,默认是jdk所包含的运行时环境目录以及当前目录,就是“.”,所以如果你把"d:\"添加到环境变量classpath中的话就能在任意位置执行你编译好的在d:盘的那个hello.class文件,反之就只能将cmd的目录切换到hello.class所在目录在执行java hello。
说了这么多不知道你明白没。
推荐于2017-10-12
展开全部
程序没有问题,在我这没有问题,你可以测试下配置的问题,应该是Java环境安装设置有问题
第一步:安装jdk,下载地址:;
第二步:右击“我的电脑”属性,选择“高级”选项卡,单击“环境变量”,
第三步:假设JDK的安装路径:E:\jdk
在用户变量中添加下面的变量和属性值
Classpath E:\jdk\lib\tools.jar; E:\jdk\lib\dt.jar
Java_home E:\jdk
Path E:\jdk;E:\jdk\bin
在系统变量中添加下面的变量和属性值
CLASSPATH E:\jdk\lib\tools.jar; E:\jdk\lib\dt.jar
PATH E:\jdk;E:\jdk\bin
JAVA_HOME E:\jdk
第一步:安装jdk,下载地址:;
第二步:右击“我的电脑”属性,选择“高级”选项卡,单击“环境变量”,
第三步:假设JDK的安装路径:E:\jdk
在用户变量中添加下面的变量和属性值
Classpath E:\jdk\lib\tools.jar; E:\jdk\lib\dt.jar
Java_home E:\jdk
Path E:\jdk;E:\jdk\bin
在系统变量中添加下面的变量和属性值
CLASSPATH E:\jdk\lib\tools.jar; E:\jdk\lib\dt.jar
PATH E:\jdk;E:\jdk\bin
JAVA_HOME E:\jdk
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询