java不能运行class文件,求帮助 通过命令窗口,cd 到jdk\bin的目录,测试javac和java都能用,但是通过javac编译java文件之后,再通过java运行class文件,提示错误: 找不到或无法加载主类 hello 这是怎么回事啊 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不知你配置了Path和classpath没有?再则,请贴出错误提示。另外,粗学者,最好直接使用Eclipse。 文件名后缀应该是.java把你的隐藏文件名打开就知道了 能不能把你的具体命令发出来呢 应该不是1楼说的path的事 不都提示了吗,找不到主类,要么是文件名跟类名不符,要么是没有main方法。 确认你的原文件.java中的package. 运行的时候先cd到该package最大的根然后再javac package就可以了 运行的时候java 包名.类 重新安装SDK试试 明白了 因为配置了classpath 所以经过编译的hello.java文件就自动存在了classpath变量指定的位置如果想要运行 hello.class 还得去classpath目录下运行 谢谢大家了 文件名和类名不一样也可以,主要是配置了classpath环境变量之后,所有编译生成的class文件都要去classpath环境目录下运行才可以 文件名和类名不一样也可以,主要是配置了classpath环境变量之后,所有编译生成的class文件都要去classpath环境目录下运行才可以文件名必须和文件中的public类名相同, 我写了这么个类 public class H { public static void main(String[] args) { System.out.println("good"); } }这是运行结果:zh@zh:~$ vi a.javazh@zh:~$ javac a.java a.java:1: 错误: 类H是公共的, 应在名为 H.java 的文件中声明public class H { ^1 个错误zh@zh:~$ mv a.java H.javazh@zh:~$ javac H.java zh@zh:~$ java Hgood这结果中,第一次运行提示,说明了类名与文件名不能随便取。另外,我没有更换过目录。classpath的作用,是为了让你在任何目录下都可以方便的运行程序。而不用非得跑到程序安装目录下。比如在 D:\java安装的java,配到classpath,是为了在其他任何地方都可以使用javac,和java,按照你的理解配置classpath有什么用?你的理解全部都错了。 文件名和类名不一样也可以,主要是配置了classpath环境变量之后,所有编译生成的class文件都要去classpath环境目录下运行才可以文件名必须和文件中的public类名相同, 我写了这么个类 public class H { public static void main(String[] args) { System.out.println("good"); } }这是运行结果:zh@zh:~$ vi a.javazh@zh:~$ javac a.java a.java:1: 错误: 类H是公共的, 应在名为 H.java 的文件中声明public class H { ^1 个错误zh@zh:~$ mv a.java H.javazh@zh:~$ javac H.java zh@zh:~$ java Hgood这结果中,第一次运行提示,说明了类名与文件名不能随便取。另外,我没有更换过目录。classpath的作用,是为了让你在任何目录下都可以方便的运行程序。而不用非得跑到程序安装目录下。比如在 D:\java安装的java,配到classpath,是为了在其他任何地方都可以使用javac,和java,按照你的理解配置classpath有什么用?你的理解全部都错了。我想错了,想成环境变量了,classpath的地方你没有理解错。 我只想说 类名不是Hello么? 请教 关于java虚拟机内存的分布问题? 关于Exception in thread "Timer-0" 如何把"1"转换成"一" java日期格式转换 高分求java程序如何打包发布,JAR,WAR等,今天揭贴 ?如何将一个序列化的对象存入数据库? 对于Java的效率实现问题.... 多线程访问文件的问题 看看这个程序! 高分请教日文系统下的中文输入问题 求点拨一个“特奇葩”的代码报错。 数据库建表
再则,请贴出错误提示。另外,粗学者,最好直接使用Eclipse。
把你的隐藏文件名打开就知道了
因为配置了classpath 所以经过编译的hello.java文件就自动存在了classpath变量指定的位置
如果想要运行 hello.class 还得去classpath目录下运行
谢谢大家了
我写了这么个类 public class H {
public static void main(String[] args) {
System.out.println("good");
}
}
这是运行结果:zh@zh:~$ vi a.java
zh@zh:~$ javac a.java
a.java:1: 错误: 类H是公共的, 应在名为 H.java 的文件中声明
public class H {
^
1 个错误
zh@zh:~$ mv a.java H.java
zh@zh:~$ javac H.java
zh@zh:~$ java H
good
这结果中,第一次运行提示,说明了类名与文件名不能随便取。
另外,我没有更换过目录。
classpath的作用,是为了让你在任何目录下都可以方便的运行程序。而不用非得跑到程序安装目录下。
比如在 D:\java安装的java,配到classpath,是为了在其他任何地方都可以使用javac,和java,按照你的理解配置classpath有什么用?
你的理解全部都错了。
我写了这么个类 public class H {
public static void main(String[] args) {
System.out.println("good");
}
}
这是运行结果:zh@zh:~$ vi a.java
zh@zh:~$ javac a.java
a.java:1: 错误: 类H是公共的, 应在名为 H.java 的文件中声明
public class H {
^
1 个错误
zh@zh:~$ mv a.java H.java
zh@zh:~$ javac H.java
zh@zh:~$ java H
good
这结果中,第一次运行提示,说明了类名与文件名不能随便取。
另外,我没有更换过目录。
classpath的作用,是为了让你在任何目录下都可以方便的运行程序。而不用非得跑到程序安装目录下。
比如在 D:\java安装的java,配到classpath,是为了在其他任何地方都可以使用javac,和java,按照你的理解配置classpath有什么用?
你的理解全部都错了。
我想错了,想成环境变量了,classpath的地方你没有理解错。