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”后回车:

输入javac后回车:

输入java –version(该命令为查看jdk版本的命令,注意:Java后要空格再加 –version)后回车:

配置好了那我们就测试下吧
在C盘创建一个java的文件夹,再创建一个HelloWorld.java的文件,复制一下内容保存
public class HelloWorld
{
public static void main(String args[])
{
System.out.println("Hello World");
}
}
开始->运行->cmd 打开命令行
1. 进入项目目录
C:\Documents and Settings\Administrator>cd c:\java
2. 编译java文件,在同一目录下面生成名字一样的.class文件
C:\java>javac HelloWorld.java
3. java 命令执行 HelloWorld文件,输出到窗体
C:\java>java HelloWorld
Hello World
注:CLASSPATH值的最后没;(分号)会出现以下错误
错误:找不到或无法加载主类HelloWorld。
java HelloWorld时,字母大小写搞错也出错
java环境变量详解---找不到或无法加载主类的更多相关文章
- 在命令提示符下,运行Java程序时,提示"找不到或无法加载主类"
小白:在命令提示符下,运行Java程序时,提示"找不到或无法加载主类". 大神:运行Java程序的作用是让Java解释器装载,检验并运行字节码文件(.class).因此,在运行Ja ...
- maven project中,在main方法上右键Run as Java Application时,提示错误:找不到或无法加载主类XXX.XXXX.XXX
新建了一个maven project项目,经过一大堆的修改操作之后,突然发现在main方法上右键运行时,竟然提示:错误:找不到或无法加载主类xxx.xxx.xxx可能原因1.eclipse出问题了,在 ...
- javac编译成功,用java运行class文件出现“找不到或无法加载主类” 的问题
1.pack后为包名,包与系统文件夹一一对应.并且代码中的包名不包含文件包的名字,即文件名 2.javac 按照*.java 文件的所在路径进行编译,编译完成后,使用java +完整包名(包含文件包名 ...
- 命令行中运行Java字节码文件提示找不到或无法加载主类的问题
测试类在命令行操作,编译通过,运行时,提示 错误: 找不到或无法加载主类 java类 package com.company.schoolExercise; public class test7_3_ ...
- Java SE之 Eclipse错误: 找不到或无法加载主类或项目无法编译10种解决大法!【摘抄】
声明一下:此BUG确实经常困扰我许久,今日遇到很强大的一套解决办法,又怕原博主的网页以后查找不到,故此摘抄copy一份,望得各方侵权一事而谅解. 传送门先行送上:http://blog.csdn.ne ...
- Java 命令行运行java程序,出现“找不到或无法加载主类 ”的注意事项
引用:http://blog.chinaunix.net/uid-27106528-id-5209914.html 要在CMD命令行中使用java 运行java程序,关于出现 “找不到或无法加载主类 ...
- java环境变量---找不到或无法加载主类
默认安装在C:\ProgramFiles\Java\jdk1.7.0目录下 环境变量配置为 PATH=.;%JAVA_HOME%\bin CLASSPATH=.;%JAVA_HOME%\lib\dt. ...
- 配置环境变量时,cmd下运行java -version,报错:找不到或无法加载主类 -version
这个方面适用于报错为:java 找不到或无法加载主类,一般是找不到类的路径,问题出在CLASSPATH环境变量上,当然这是大多数.大概率的出错点 不排除根据个人情况不况,所以想起来伟大领袖毛主席的话: ...
- java HelloWorld 提示“错误: 找不到或无法加载主类 HelloWorld“解决方案
在检查环境变量等前提工作准确无误后,注意要配好CLASSPATH,仍然报“错误: 找不到或无法加载主类 HelloWorld“. 本人工程目录:mygs-maven/src/main/java/hel ...
随机推荐
- JS实现复制到剪贴板
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...
- [iOS基础控件 - 6.2] LOL英雄列表 UITableView单项显示
A.需求 1.使用只有一个section的TableView来显示LOL 的英雄列表 2.内容包括标题.副标题.图标 3.使用plain样式 4.使用MVC模式 heros.plist 文件结 ...
- [C语言 - 1.2] 类型说明符、字符、数组
A.类型说明符(只能修饰int) short int: = short 2字节 long int: long 8字节 = long 输出占位符 %ld signed int: = signed 默 ...
- C++学习笔记(十七):RTTI
这个知识点被遗漏了,可以结合之前的这篇文章看类型转换这个知识点. RTTI(Run-Time Type Information,运行时类型信息)即程序能够使用基类的指针或引用来检查这些指针或引用所指的 ...
- The Woman in Red Is Seen as a Threat by Other Wom
The Woman in Red Is Seen as a Threat by Other Wom In the 1939 film classic The Women, much is made o ...
- Why Does Everyone Else Appear to Be Succeeding?
Why Does Everyone Else Appear to Be Succeeding? —Steven G. Krantz When you are a student, it will a ...
- Java中3DES加密解密与其他语言(如C/C++)通信
国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...
- cc2530 timer 3 PWM <可调占空比>
前提: 开始用的是 cc2530 timer 1来做PWM的,已经可调占空比了,但是由于硬件的改动,需要用timer 3 和 timer 4 代替.由于调试过程中出了些小问题,于是自己把这个贴出来.关 ...
- 有关AES加密的问题
遇到一个项目,需要用AES加密密码,android的已经写好了,java源码: private static final String AES_OPTIONS = "AES/ECB/PKCS ...
- linux终端或者虚拟机SecureCRT窗体拖动之后,会自己主动收到一个Ctrl+C的命令
虚拟机中SecureCRT窗体每次鼠标划动和拖动窗体都会出现Crtl+C命令.导致远程Linux连接操作中断 经查找发现是本地机器里安装了相关软件快捷键导致.比方我的有道词典划词功能.取消划词就可以