java突然无法加载主类
Ⅰ java 找不到或无法加载主类
默认安装在C:\ProgramFiles\Java\jdk1.7.0目录下
环境变量配置为
PATH=.;%JAVA_HOME%\bin
CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\toos.jar;
JAVA_HOME=C:\Program Files\Java\jdk1.7.0
在把jdk安装到计算机中之后,我们来进行设置使java环境能够使用。 首先右键点我的电脑。打开属性。
然后选择“高级”里面的“环境变量”,在新的打开界面中的系统变量需要设置三个属性“JAVA_HOME”
、“path”、“classpath”,其中在没安装过jdk的环境下。path属性是可能存在的(安装过其它软件可能
会自动增加,如暴风影音,)。而JAVA_HOME和classpath是不存在的。
一:点“新建”,然后在变量名写上JAVA_HOME,顾名其意该变量的含义就是java的安装路径,呵呵,然
后在变量值写入刚才安装的路径“C:\ProgramFiles\Java\jdk1.7.0”。
二:其次在系统变量里面找到path,没有就新建,然后点编辑,path变量的含义就是系统在任何路径下都
可以识别java命令,则变量值为“.;%JAVA_HOME%\bin;”,(其中“%JAVA_HOME%”的意思为刚才设置
JAVA_HOME的值),也可以直接写上“C:\Program Files\Java\jdk1.7.0\bin;”
三: 最后再点“新建”,然后在变量名上写classpath,该变量的含义是为java加载类(class or lib)路
径,只有类在classpath中,java命令才能识别。其值为“.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\toos.jar;(要加.表示当前路径)”,与相同“%JAVA_HOME%有相同意思”
以上三个变量设置完毕,则按“确定”直至属性窗口消失,下来是验证看看安装是否成功。先打开“开始
”-> “运行”,打入“cmd”,进入dos系统界面。然后打“java -version”,如果安装成功。系统会显示java version jdk"1.7.0"。
确保安装在C:\ProgramFiles\Java\jdk1.7.0,环境变量直接复制就可以了,在dos界面中输入javac来查
看该命令是否合法,同样输入java来查看该命令是否合法
这样环境变量就设置好了,下面进行对PATH,CLASSPTH,JAVA_HOME的讲解
以下为置JAVA_HOME,CLASSPATH,PATH的目的:
1,设置JAVA_HOME:
一、为了方便引用,比如,你JDK安装在C:\Program Files\Java\jdk1.7.0目录里,则设置JAVA_HOME为该
目录路径, 那么以后你要使用这个路径的时候, 只需输入%JAVA_HOME%即可, 避免每次引用都输入很长的
路径串;
二、归一原则, 当你JDK路径被迫改变的时候, 你仅需更改JAVA_HOME的变量值即可, 否则,你就要更改任
何用绝对路径引用JDK目录的文档, 要是万一你没有改全, 某个程序找不到JDK, 后果是可想而知的----系统崩溃!
三、第三方软件会引用约定好的JAVA_HOME变量, 不然, 你将不能正常使用该软件, 以后用JAVA久了就会知道, 要是某个软件不能正常使用, 不妨想想是不是这个问题.
2,设置CLASSPATH:
这是一个很有趣,当然也比较折磨初学者的问题, 这个变量设置的目的是为了程序能找到相应的".class"文件, 不妨举个例子: 你编译一个JAVA程序---A.java, 会得到一个A.class的类文件,你在当前目录下执行java A, 将会得到相应的结果(前提是你已经设置CLASSPATH为"."). 现在, 你把A.class移到别的目录下(例如:"e:\"), 执行java A, 将会有NoClassDefFindError的异常,原因就是找不到.class文件, 现在你把CLASSPATH增加为:".;e:\"再在任何目录下运行java A, 看看会有什么结果~~:)~~~, 一切正常, java命令通过CLASSPATH找到了.class文件!
3,设置PATH:
道理很简单, 你想在任何时候都使用%JAVA_HOME%\bin\java 等来执行java命令吗, 当然不会, 于是, 你
可以选择把%JAVA_HOME%\bin添加到PATH路径下, 这样, 我们在任何路径下就可以仅用java来执行命令了
.(当你在命令提示符窗口输入你个代码时,操作系统会在当前目录和PATH变量目录里查找相应的应用程序,
并且执行.)
现在都配置完了 ,可以检测一下:
按下“WIN”(在Ctrl和Alt之间)+“R”,输入cmd,回车。
分别输入java,javac,java -version,如果正确配置了环境变量,则分别回出现下图内容。
输入“java”后回车:
注:CLASSPATH值的最后没;(分号)会出现以下错误
错误:找不到或无法加载主类HelloWorld。
java HelloWorld时,字母大小写搞错也出错
Ⅱ java运行显示“找不到或无法加载主类”!
我们的工程路径是D:HelloWorld,在HelloWorld文件夹中建立一个src文件夹,类B的源代码文件就放在src中。用javac编译完以后会在src文件夹中生成NewsManager.class,如下:
Ⅲ java中无法加载或找不到主类
//这个问题原因有以下几种,但是和环境变量并没有太大的关系
//能够执行java和javac就证明你的环境变量已经配置好了,其实classpath可以不配置
//假如有如下文件:H:codeHello.java
publicclassHello{
publicstaticvoidmain(String[]args){
System.out.println("Hello");
}
}
//正确编译命令:javacHello.java
//正确<ahref="https://www..com/s?wd=%E8%BF%90%E8%A1%8C%E5%91%BD%E4%BB%A4&tn=44039180_cpr&fenlei=-bIi4WUvYETgN-"target="_blank"class="-highlight">运行命令</a>:javaHello
错误1:H:code>javaHello.java
错误:找不到或无法加载主类Hello.java
原因:命令错误
错误2:H:code>javaHello.class
错误:找不到或无法加载主类Hello.class
原因:命令错误
错误3:java源文件带有包名,往往容易出错
如:H:codeHello2.java
packagecom.example;
publicclassHello2{
publicstaticvoidmain(String[]args){
System.out.println("Hello2");
}
}
这代码看上去没什么问题,执行:
H:code>javacHello2.java
H:code>javaHello2
错误:找不到或无法加载主类Hello2
解决办法:
+.删除包名或者
+.在code下创建一个与包名相同的文件结构(H:codecomexampleHello2.java)
编译:H:code>javaccom/example/Hello2.java
运行:H:code>javacom.example.Hello2
Ⅳ Java 错误:找不到或无法加载主类
找不到主类是因为classpath配置错误。
是环境变量的问题,看看你的path和classpath是否是正确的,最可能的错误是classpath中少了前面少了.;
classpath的配置必须遵循以下规则:
.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
Ⅳ java运行显示“找不到或无法加载主类”
楼主CLASSPATH环境变量设置有问题。应该设置成当前目录加bin目录如下:.;\%JAVA_HOME%bin
注意那个点和分号,楼主肯定是少了当前目录,就是那个点。
Ⅵ java中碰到无法加载主类怎么办
检查环境变量配置:
JAVA_HOME:D:\Java\jdk1.8.0_91
CLASSPATH:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(前面有英文点号)
Path:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
设置没问题。java -version测试,显示JDK版本正常;
我很确定自己的JDK设置没问题,在Eclipse下JAVA文件执行正常,但显示 错误: 找不到或无法加载主类 j2se001.HelloWorld 真的好无奈。
1.网上说要把jdk环境变量设置到用户变量,而不是用户变量;设置后无效,都重启过电脑,没毛用;
2.此帖子给帮了大忙:http://bbs.csdn.net/topics/391862656?page=1
主要观点就是:JDK编译正常,那么JAVA_HOME配置正确。如果这样的话,那你的HelloWorld类的放的实际位置,package设置的和类路径的设置不匹配,执行器找不到类文件;说白了就是编译后的class文件的路径问题。
两种解决办法:
1.把package语句去掉,让编译文件处于当前文件夹
例如我将java文件的package去掉,放在D盘根目录
2.不去掉package,在java文件同级目录加一个package相同名称的文件夹;
HelloWorld.java在src的j2se001文件夹下,j2se001下建一个同package名称的文件夹
或者下面这种,与上面实质是一样的,只是在哪个目录执行java类文件(还是在java类文件同级目录建一个同package名称相同的文件夹);
删package或者加package同名folder的实质:执行器指向package文件夹
【简介】:
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程 。
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点 。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等
望采纳,谢谢!
Ⅶ java 错误: 找不到或无法加载主类 test.HelloWorld
两种解决办法:
1.把package语句去掉,让编译文件处于当前文件夹
例如我将java文件的package去掉,放在F盘根目录
2.不去掉package,在java文件同级目录加一个package相同名称的文件夹;
HelloWorld.java在src的j2se001文件夹下,j2se001下建一个同package名称的文件夹
或者下面这种,与上面实质是一样的,只是在哪个目录执行java类文件(还是在java类文件同级目录建一个同package名称相同的文件夹);
删package或者加package同名folder的实质:执行器指向package文件夹
Ⅷ java无法找到或加载主类是怎么回事
java无法找到或者加载主类主要是因为路径错误。
1、在classpath的最前面要加一个本目录路径,用.表示,由于后面还有java的dt和tools两个路径,所以.后要加;进行分隔表示。
2、在cmd下运行javac 和java的时候,必须在该java文件的目录下运行,这样生成的class也在该目录下,java的时候也会第一个就在本目录下找class文件,就不 会提示找不到了。这个cmd运行路径由于一般不太注意,输入cmd就会直接到c:\个人文件夹下,而一般的java文件会用其它软件编写,放在选定的路径 下,这两个路径很少能主动重合,一运行当然找不到了
Ⅸ 我的世界开服JAVA找不到或无法加载主类
指令输入路径的文件夹名字中不能带空格,像是C:\Program Files 中间的空格,windows会认为这个文件在C:\Program这个文件夹中而不是C:\Program FIles这个文件夹中
建议先用cd命令定位到包含服务端的文件夹,然后再使用 java -jar 服务端名称 运行服务器
Ⅹ java程序报找不到或无法加载主类
从错误描述和图中可以看出,Java编译器没有找到HelloWorld类。通过命令运行Java编译器时,当前目录一定要切换到HelloWorld类所在的目录。运行Java程序时,也要切换到class文件所在的目录,Java命令后面的程序文件名称不要带文件扩展名class。
从图中看出,你的HelloWorld类在D盘Java目录下,具体操作如下:
在Windows命令行窗口输入“d:”命令,并按下回车键(Enter),当前工作目录被设置为D盘,继续输入“cdjava”命令,并按下回车键(Enter),当前工作目录被设置为“d:/java”目录,如下图所示:
在当前工作目录下输入“javaHelloWorld”命令,并按下回车键(Enter),屏幕显示“HelloWorld”语句。输入命令时,注意大小写以及“java”与“HelloWorld”之间的空格。