Java新手入门——环境变量

原创 2007年09月27日 18:06:00

怎么说呢,看到很多贴子,都说是建议新手从一开始尽量用“记事本+javac.exe+java.exe”编写Java程序,当时还想,用IDE写不照样嘛,能学不就可以了?但慢慢的,发现自己竟然是连最基本的import都有点搞不明白了。对于一些小程序还可以,一个包,几个class文件就搞定了,但要想重用之前的类,就不知道该怎么弄了。所以嘛,呵呵,回过头来补习一下这最基本的环境变量的配置吧!

之所以要从环境变量开始,主要还是因为一些IDE,它都是自动设置Java路径的,也就是说你装完了JDK、IDE之后就根本什么都不用管了,直接写代码就好了。但Java的包机制却是和环境变量有着密切关系的。而关于环境变量的知识我不准备讲了,哪位感兴趣的自己百度里找找吧,有很多的——毕竟这不是本文的重点嘛~

嗯,Java中相关的环境变量网上都有很多的,我找了一篇对我来说启发很大的贴下来吧——删去了其中一些废话。本来想把作者贴出来的,可惜网上文章一大抄,都不知道到底是出自谁手,我也只能是在心里对该文的作者致敬了…

Windows下JAVA用到的环境变量主要有3个,JAVA_HOME、CLASSPATH、PATH。
JAVA_HOME指向的是JDK的安装路径,如C:/JDK_1.4.2,在这路径下你应该能够找到bin、lib等目录。值得一提的是,JDK的安装路径可以选择任意磁盘目录,不过建议你放的目录层次浅一。
设置方法:
JAVA_HOME=C:/JDK_1.4.2
PATH环境变量原来Windows里面就有,你只需修改一下,使他指向JDK的bin目录,这样你在控制台下面编译、执行程序时就不需要再键入一大串路径了。设置方法是保留原来的PATH的内容,并在其中加上%JAVA_HOME%/bin (注,如果你对DOS批处理不了解,你可能不明白%%引起来的内容是什么意思;其实这里是引用上一步设定好的环境变量JAVA_HOME,你写成C:/JDK_1.4.2也是可以的;你可以打开一个控制台窗口,输入echo %JAVA_HOME%来看一下你的设置结果) :
PATH=%JAVA_HOME%/bin;%PATH%
同样,%PATH%是引用以前你设置的PATH环境变量,你照抄以前的值就行了。
CLASSPATH环境变量我放在最后面,是因为以后你出现的莫名其妙的怪问题80%以上都可能是由于CLASSPATH设置不对引起的,所以要加倍小心才行。
CLASSPATH=.;%JAVA_HOME%/lib/tools.jar
首先要注意的是最前面的".;",如果你看不清,我给你念念——句点分号。这个是告诉JDK,搜索CLASS时先查找当前目录的CLASS文件。
具体的设定方法: win2k/xp用户右键点击我的电脑->属性->高级->环境变量,修改下面系统变量那个框里的值就行了。

这样子就基本上把环境变量设置好了。

所以我随便在硬盘上任何一个地方,比如E盘根目录,建立一个HelloWorld.java文件,内容如下:

public class HelloWorld{
    
public static void main(String[] args){
        System.out.println(
"Hello,world!");
    }

}

然后在命令提示符下,键入以下语句,就可以运行程序了。

C:/Documents and Settings/LZJ>E:

E:/>javac HelloWorld.java

E:/>java HelloWorld
Hello,world!

但是,如果是我们想把这个HelloWorld文件打进一个包内呢?试着在HelloWorld的第一行加入语句 package lzj; 会出现什么结果呢?

在E盘里面建立一个文件夹,命名为lzj,然后把经过修改过后的HelloWorld.java剪切过去,编译,运行。

E:/>cd lzj

E:/lzj>javac HelloWorld.java

E:/lzj>java HelloWorld
Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld (wrong nam
e: lzj/HelloWorld)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)

晕,这回却出现错误了…

为什么呢?因为现在HelloWorld是隶属于lzj包下的,所以Java在定位它的时候就应该定位成lzj.HelloWorld。于是……我们应该这么样来运行它:

E:/lzj>cd..

E:/>java lzj.HelloWorld
Hello,world!

呵呵,成功了!通过这个例子,我们明白了,包内的class文件它的名称应该是“包名.类名”这样子的。其实想想也是啊,在编程序的时候,我们不都是这样来定位一个类的吗,比如说,java.util.Calendar。——除了位于java.lang包的类和已用import把它的包整个都导入的情况。

 

——好了,这一块差不多了,时间也到了,还要去上选修课啊……晚上如果有时间的话会再来说一下怎么配置自己的工具包的,不过原理都一样,很简单的~

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

黑马程序员——Java入门重点知识点及环境变量设置

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

MyBatis新手入门级环境搭建

最近有个笔试题说的是Mybatis环境如何搭建.不太明白这道题说的ju

黑马程序员--java入门之环境变量图文教程

当你会利用dos进行一些命令操作之后,你会觉得只是一件多么神奇的事情啊,其实dos还有另一个神奇之处,当你进入某个目录时,输入这个目录里面的某个文件他就会执行这个文件,但是,这仅仅是局限于这个目录里面...

Java简单入门---------JDK的检测,安装和环境变量设定

Part 1: 检测是否安装了JDK 打开CMD控制台,输入java -version(注:-version前有一个空格),如果安装了JDK会有内容显示: 如果显示不是内部或外部命令则证明没有安...

Java从入门到精通—配置自己的环境变量

文章来自本人自学Java的心得精髓,俗话说“高手都是自学 的”。但是我相信没有高手带的话,我们大家互相交流编程过程中遇到的问题和解决的办法以及心得体会。相信我们的学习效率一定会高于任何人,正如“三个臭...

Ubuntu 入门(2):配置 Java 环境变量 及 设置默认JDK

下载官网的下载地址:Java SE Development Kit 8 Downloads 认准自己所需的版本后开始下载就好了,本文后面以“jdk-8u91-linux-x64.tar.gz”为例。配...
  • NoMasp
  • NoMasp
  • 2016-06-04 14:58
  • 1976

JAVA学习之入门篇之环境变量

一、设置环境变量 1)环境变量作用: 就是让JAVA虚拟机按照这个路径去找到class类!如果class类不在环境变量指令的路径中的时候,就会提示错误!因为JAVA虚拟机找不到该类!   2)...

【干货收藏】云服务器从选配置、到远程链接、到环境配置的新手入门百问-Windows系统篇

云服务新手入门百问-Windows系统篇 目前对于阿里云所提供的操作系统镜像而言,无论是Windows系还是Linux系任何一种平台都有很多种可以供大家选择。这两个系统都有各自的优点和缺点,...

Vue2.0 新手入门 — 从环境搭建到发布

什么是 Vue Vue 是一个前端框架,特点是 数据绑定 比如你改变一个输入框 Input 标签的值,会自动同步更新到页面上其他绑定该输入框的组件的值  ...

JAVA基础--db01_入门-软件安装-环境变量

1:基础常识           1:软件开发          2:人机交互方式       ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)