找不到main class 今天在cmd中运行xx.java时出现了错误,报的是找不到main函数,但是我在窗口中运行java和javac命令时都是正确的显示,环境变量的配置应该没有错误的,之后我又把它单独在myeclipse中运行,能够正常运行,说明程序变得也没问题,为什么会在命令窗口中报错呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在窗口中运行java和javac命令时都是正确的显示???那怎么还会出现找不到main函数呢我觉得应该是包的路径的问题 带包名没有啊 ?即是 java文件中有没有 package xxx.xxx ;如果 有的话 ,编译的时候 :javac -d . xx.javajava xxx.xxx.xx 如果是环境变量的问题,那么我的java和javac命令怎么会正常运行呢? abstract class Person{ String name; int age; String occupation; public abstract String talk();}class Student extends Person{ public Student(String name,int age,String occupation){ this.name=name; this.age=age; this.occupation=occupation; } public String talk(){ return "学生--->姓名"+this.name+",年龄"+this.age+"职业:"+this.occupation+"!"; } } class Workers extends Person{ public Workers(String name,int age,String occupation){ this.name=name; this.age=age; this.occupation=occupation; } public String talk(){ return "工人--->姓名"+this.name+",年龄"+this.age+"职业:"+this.occupation+"!"; } } public class TestDemo1{ public static void main(String[] args){ Student s=new Student("张三",20,"学生"); Workers w=new Workers("李四",40,"工人"); System.out.println(s.talk()); System.out.println(w.talk()); } } 你运行的时候是在java保存的路径下运行的 ?我复制你的代码,运行没有问题哦F:\>cd javaTestF:\javaTest>javac TestDemo1.javaF:\javaTest>java TestDemo1学生--->姓名张三,年龄20职业:学生!工人--->姓名李四,年龄40职业:工人!F:\javaTest> LZ你把环境变量再配一下具体:1.打开我的电脑--属性--高级--环境变量 2.新建系统变量JAVA_HOME 和CLASSPATH 变量名:JAVA_HOME 变量值:C:\Program Files\Java\jdk1.7.0变量名:CLASSPATH 变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;3. 选择“系统变量”中变量名为“Path”的环境变量,双击该变量,把JDK安装路径中bin目录的绝对路径,添加到Path变量的值中,并使用半角的分号和已有的路径进行分隔。 变量名:Path 变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; 再进入TestDemo1.java所在的目录进行编译 %JAVA_HOME%\lib\tools.jar主要是这个,你环境变量如果确认没有错.那你要看在安装目录下的lib目录中有没有tools.jar?如果没有,你找到这个tools.jar考到lib下即可. 另一个关于Thread的问题 正则表达式判断yyyy-mm-dd格式的字符串 Scanner 的hasNext(pattern)为什么是返false? 动态添加一个组件,为什么不显示? 请问我的APPLET程序怎么在WEB上调用啊~~~? 数据库连接问题 提取字符串!!! 有关FileInputStream、FileOutputStream和BufferedInputStream、BufferedOutputStream的问题,请高手解答! jsp页面引用参数的问题? 如何实现文件对话框? 如何将HashMap中的数据存入txt文件,然后进行读取 关于字符串截取问题
即是 java文件中有没有
package xxx.xxx ;如果 有的话 ,编译的时候 :javac -d . xx.java
java xxx.xxx.xx
String name;
int age;
String occupation;
public abstract String talk();
}
class Student extends Person{
public Student(String name,int age,String occupation){
this.name=name;
this.age=age;
this.occupation=occupation;
}
public String talk(){
return "学生--->姓名"+this.name+",年龄"+this.age+"职业:"+this.occupation+"!";
}
}
class Workers extends Person{
public Workers(String name,int age,String occupation){
this.name=name;
this.age=age;
this.occupation=occupation;
}
public String talk(){
return "工人--->姓名"+this.name+",年龄"+this.age+"职业:"+this.occupation+"!";
}
}
public class TestDemo1{
public static void main(String[] args){
Student s=new Student("张三",20,"学生");
Workers w=new Workers("李四",40,"工人");
System.out.println(s.talk());
System.out.println(w.talk());
}
}
我复制你的代码,运行没有问题哦
F:\>cd javaTestF:\javaTest>javac TestDemo1.javaF:\javaTest>java TestDemo1
学生--->姓名张三,年龄20职业:学生!
工人--->姓名李四,年龄40职业:工人!F:\javaTest>
变量名:JAVA_HOME
变量值:C:\Program Files\Java\jdk1.7.0
变量名:CLASSPATH
变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;3. 选择“系统变量”中变量名为“Path”的环境变量,双击该变量,把JDK安装路径中bin目录的绝对路径,添加到Path变量的值中,并使用半角的分号和已有的路径进行分隔。
变量名:Path
变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
主要是这个,你环境变量如果确认没有错.
那你要看在安装目录下的lib目录中有没有tools.jar?
如果没有,你找到这个tools.jar考到lib下即可.