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

自己动手编译、运行Java程序

2013-03-02 10:08 337 查看
本人初学Java,看到别人都说学Java先不要用Eclipse、NetBeans这些开发工具,所以索性就自己试试。过程犯的错误极多,参照着李刚老师那本疯狂Java一点一点的实验.由于自己使用过Makefile,所以就用Makefile做了实验,总算是可以不用Eclipse、NetBeans就能自己编译运行一些小的程序了,下面就是我自己总结的心得,如有错误,请大家指正,谢谢。

本文分四小节:

第一节:配置Java运行时环境
第二节:代码的编译以及运行
第三节:如何打jar包以及使用jar包
第四节:利用Makefile自动编译运行Java程序

第一节:配置Java运行时环境

本节以Windows XP为例,来配置Java运行环境。这节很简单,我就长话短说。

1:下载JDK开发包,解压安装。
2:在用户环境变量中增加PATH变量(在系统的环境变量中增加也行,但是可能需要重新启动操作系统),并设置其值。

例如我把JDK安装在F:\program\java目录下,则把PATH变量设置成F:\program\java\jdk\bin,因为这个路径下有我们要编译、运行Java程序所需要的所有工具,比如javac.exe,java.exe,jar.exe....。之后我们就可以在cmd下使用javac、java、jar等命令了。

例如有一下Java源文件Test.java,执行javac Test.java就会在当前目录下生成Test.class文件。之后我们运行java Test即可运行程序。当然也可以人为指定class文件的生成位置,利用-d选项。比如 javac -d D:\ Test.java,那么就可以在D:\目录下看到Test.class了。

第二节:代码的编译以及运行

对于写Java程序而言,我们主张源文件与class文件都有相同的目录结构,这样不仅会方便代码的组织管理,也使得在编译以及运行Java程序时少犯错误。

1:位于默认包下的文件的编译以及运行

View Code

//A.java
package package1;
public class A{

private int value;

public A(){ value = 0; }

public void setValue(int var){
value = var;
}

public int getValue(){
return value;
}
}

//B.java
package package1;
public class B{

private String name;

public B(){ name = null; }

public void setName(String name){
this.name = name;
}

public String getName(){
return name;
}

}

//C.java
package package2;
public class C{

private String name;

public C(){ name = null; }

public void setName(String name){
this.name = name;
}

public String getName(){
return name;
}

}

//Test.java
import java.util.*;
import package1.*;
import package2.*;
public class Test{

public static void main(String[] args){

A a = new A();
B b = new B();
C c = new C();

a.setValue(3);
b.setName("Java");
c.setName("Test");

System.out.println(a.getValue());
System.out.println(b.getName());
System.out.println(c.getName());
}
}


Makefile如下:

//Makefile
target:
javac ./package1/A.java -d ../classes
javac ./package1/B.java -d ../classes
javac ./package2/C.java -d ../classes
javac ./main/Test.java  -d ../classes/main/ -classpath ../classes
run:
java -classpath ../classes/main;../classes Test
clean:
rm -rf ../classes/package1/*.class
rm -rf ../classes/package2/*.class
rm -rf ../classes/main/*.class


运行:make
D:\Java\project\src>make
javac ./package1/A.java -d ../classes
javac ./package1/B.java -d ../classes
javac ./package2/C.java -d ../classes
javac ./main/Test.java -d ../classes/main/ -classpath ../classes

运行:make run
D:\Java\project\src>make run
java -classpath ../classes/main;../classes Test
3
Java
Test

这样,其实我们完全可以不用Eclipse、Netbeans等开发工具就能自己编译运行自己的系统了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: