您的位置:首页 > 编程语言 > Java开发

关于常用的javac,java命令

2011-05-24 23:06 375 查看

关于常用的javac,java命令

关键字: java, javac

关于常用的javac,java命令
=============================================================================================
大家都知道javac是编译用,java是执行class文件用.但这里我们先从classpath谈起.

classpath表示你编译后的class文件存放的路径.我们设置classpath就是让系统知道去那个地方
找到这些class文件.

classpath设置方法有两种:

1 在环境变量中设置classpath变量.这里设置的变量是固定不变的,系统永远从classpath所
定义的路径上去找class文件.
2 打开命令行窗口执行java的一些命令时设置classpath.如:
set classpath=xxxxxxxxxx.这样系统也能从刚定义的classpath所表示的路径上找到class
文件.注意:这里的classpath所表示的路径只针对这个命令行窗口,也就是关了这个命令行窗
口,该classpath变量就不存在了.

我们再看看classpath变量的值.

例: classpath=.;D:/aaa/bbb;E:/ccc/ddd;
注意前那个点,它表示你执行java命令时的当前目录.也就是先从当前目录中找class,如果没有找
到就找D:/aaa/bbb,E://ccc/ddd;这些目录.一般都会加上这个点,否则系统不会查找当前目录.
各个目录都用分号隔开.

我们再看看javac,java命令.

1 java文件中没有package声明(以A.java为例)

我们可以用: javac A.java 进行编译,编译产生class文件的位置就在当前目录.
然后我们在当前目录用: java A进行执行.

我们也可以用: javac -d . A.java进行编译,编译产生class文件的位置也在当前目录.
-d是一个参数然后空格再点再空格再文件名.其中那个点就代表当前目录.如果我们要把class
文件编译到E盘根目录,那么我们就执行: javac -d E:/ A.java
执行class文件时,我们可以设置classpath变量再执行,也可以直接到class文件目录去执行.

2 java文件中有package声明(以A.java为例)

这里,我们只能用javac -d . A.java,或编译到其它目录:javac -d 路径 A.java
为什么呢?这里有一个包声明的问题.我们用这种方式可以产生包的文件夹,而直接用javac A.java
不能产生包的文件夹,在执行时就会出错.
执行class文件时用: java 包名.类名 如: java c.A
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: