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

Java命令行

2015-06-07 15:09 363 查看
Ubuntu下。我在

/home/sen/JavaProgram


下写了

CommandLine.java


public class CommandLine {

public static void main(String args[]){
for(int i=0; i<args.length; i++){
System.out.println("args[" + i + "]: " +
args[i]);
}
}
}


编译

javac CommandLine.java


生成

CommandLine.class


这个二进制文件。我的Ubuntu 12.04默认安装了

java version "1.7.0_80"
Java (TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)


以及

javac 1.7.0_80


命令行调用

如果当前目录不是class文件所在目录,需要设置CLASSPATH

export CLASSPATH=/home/sen/JavaProgram


顾名思义,CLASSPATH提供给Java runtime environment找class文件的,而PATH告诉bash去哪找命令的源程序的。要有export,使CLASSPATH成为环境变量,全局可知。

然后

java CommandLine A B C D


第二个参数就是class文件的名字。输出

args[0]:A
args[1]:B
args[2]:C
args[3]:D


当源文件中声明了package,使编译后的.class文件自动放在package对应的目录下

例如,我写了一个Dog.java文件

package animals;

public class Dog {
//...
}


我们新建好这个目录

/home/sen/JavaProgram/animals


那么我们只要

javac -d . Dog.java


编译后的字节码文件Dog.class就会自动被放在animals文件夹下。‘-d’参数后跟着package所在的路径(即CLASSPATH)编译器和java虚拟机通过将package名字加到class path后来构造.class文件的路径。通过把.java文件和.class文件分开放,我们可以分享包,而不用分享源码。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: