自己动手编译、运行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
Makefile如下:
运行: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等开发工具就能自己编译运行自己的系统了。
本文分四小节:
第一节:配置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等开发工具就能自己编译运行自己的系统了。
相关文章推荐
- 自己动手编译、运行Java程序,解析package的作用
- 一---Android-SDK系列文章(3) ---java(自己动手编译、运行Java程序)
- 自己动手编译、运行Java程序
- 自己动手编译、运行Java程序
- 自己动手编译、运行Java程序
- 自己动手编译、运行Java程序
- 在自己的java代码中编译并运行程序
- Java程序编译和运行的过程
- 使用DOS编译运行多个java程序
- EditPlus配置编译运行Java程序
- Sublime Text 2中编译和运行java程序
- Sublime Java 环境配置-实现Java程序编译、运行
- java程序的编译和运行依赖jdk版本问题
- Java程序的编译运行
- 记事本编译运行Java程序
- 嵌入式Linux中在开发板上/usr/bin目录下不能运行自己交叉编译的程序
- 抛砖引玉:在Editplus下配置编译和运行java程序的快捷方式
- 第一个java程序的编译和运行(linux下安装JDK)------一次编译,到处运行
- Java程序编译和运行的过程
- 创建用于编译和运行Java程序的批处理文件