javac和参数用法java命令的-d -cp
2016-01-11 23:49
876 查看
两个java文件,Pac.java和A.java
package com.test;
class Pac {
public static void main(String[] args){
com.test.test2.A.test();
}
}
package com.test.test2;
public class A{
public static void main(){
test();
}
public static void test(){
System.out.println("I'm AAAAAAAAAAAAAAAAAAAAAAA");
}
}
其中,类A是Pac类的依赖类,没有A.class文件,Pac.java无法编译通过。
首先,编译A.java,class文件产生在c:路径下
然后,才是编译Pac.java
意思是告诉jvm,需要用到的类路径可以在c:\路径下查找,Pac.class文件将产生在本地路径下。
最后,执行Pac.class, -cp参数的意思是:缺乏的类可到c:\路径下寻找。
2. 使用 -d <directory>编译选项
是不是觉得上面的编译方法有点麻烦,能不能自动在当前路径(或任意指定的路径)下生成包层次呢?有!使用-d <directory>编译选项就能做到。
E:\java\src >javac
(其中的点表示当前目录。d 和 . 之间有空格, .和后面的java文件名之间也有空格)
此时,在当前目录下就生成了一个org\javaresearch目录,并且输出的.class文件也在里面。运行:
E:\java\src >java org.javaresearch.HelloWorld
系统打印:Hello World!
如果你想把生成的类文件集中存放在一个目录中,比如:E:\java\classes下,那么你首先创建这个目录,然后编译时:
E:\java\src >javac -d E:\java\classes HelloWorld.java
就可以把生成的类文件放到E:\java\classes目录下,并且按照包层次相应的创建目录路径。你可以在E:\java\classes\org
\ javaresearch下找到HelloWorld.class文件。此时使用如下命令可以正确运行(注意如果要用到其它类,请在CLASSPATH中 设好):
E:\java\classes >java org.javaresearch.HelloWorld
package com.test;
class Pac {
public static void main(String[] args){
com.test.test2.A.test();
}
}
package com.test.test2;
public class A{
public static void main(){
test();
}
public static void test(){
System.out.println("I'm AAAAAAAAAAAAAAAAAAAAAAA");
}
}
其中,类A是Pac类的依赖类,没有A.class文件,Pac.java无法编译通过。
首先,编译A.java,class文件产生在c:路径下
然后,才是编译Pac.java
意思是告诉jvm,需要用到的类路径可以在c:\路径下查找,Pac.class文件将产生在本地路径下。
最后,执行Pac.class, -cp参数的意思是:缺乏的类可到c:\路径下寻找。
2. 使用 -d <directory>编译选项
是不是觉得上面的编译方法有点麻烦,能不能自动在当前路径(或任意指定的路径)下生成包层次呢?有!使用-d <directory>编译选项就能做到。
E:\java\src >javac
(其中的点表示当前目录。d 和 . 之间有空格, .和后面的java文件名之间也有空格)
此时,在当前目录下就生成了一个org\javaresearch目录,并且输出的.class文件也在里面。运行:
E:\java\src >java org.javaresearch.HelloWorld
系统打印:Hello World!
如果你想把生成的类文件集中存放在一个目录中,比如:E:\java\classes下,那么你首先创建这个目录,然后编译时:
E:\java\src >javac -d E:\java\classes HelloWorld.java
就可以把生成的类文件放到E:\java\classes目录下,并且按照包层次相应的创建目录路径。你可以在E:\java\classes\org
\ javaresearch下找到HelloWorld.class文件。此时使用如下命令可以正确运行(注意如果要用到其它类,请在CLASSPATH中 设好):
E:\java\classes >java org.javaresearch.HelloWorld
相关文章推荐
- java 常用高级基础知识
- Maven搭建SpringMVC+Hibernate项目详解
- java学习——abstract 和 final
- Java学习——继承
- Java final关键字声明的意义
- 了解Java并发集合ConcurrentHashMap
- Strategy模式
- java 自定annotation
- SpringMVC @RequestBody接收Json对象字符串
- JavaWeb学习总结(一)——JavaWeb开发入门
- SpringMVC+Json构建基于Restful风格的应用
- Java JSON库Jackson 2.x新变化一览
- SpringMVC返回json数据的三种方式
- 在Eclipse中导入SVN库里的Maven项目
- Java Mail(二):JavaMail介绍及发送一封简单邮件
- Spring学习总结
- java中堆内存和栈内存的区别。——2016.1.11
- Java Mail(一):telnet邮件的发送与接收原理
- Java Swing JTable 表格【14:表格的排序和过滤】
- 14.6 Spring MVC 测试框架(翻译)