Java直接用javac来编译带package的类

在没有package语句的java类,

我们可以直接使用:

javac Test.java 就可以了,

如果Test.java中包含package语句,如:package abc;

编译后,是要求Test.class文件放在abc目录下的

所以这时候就又两种方法达到目的:

1.笨方法,先直接编译Test.java

1.1. javac Test.java

1.2. 然后手动去创建abc目录

1.3. 再把Test.class文件拷贝到abc目录下

2.使用 javac -d 目标目录 类名

eg: javac -d . Test.java

-d参数:编译时,同时由系统自动生成报名

.参数:指定Test.java类的包名 将要生成在哪个目录下,.表示当前目录

时间: 2024-10-26 19:57:26

Java直接用javac来编译带package的类的相关文章

带package的java编译与不带package的java编译

转自:http://www.biostatistic.net/home.php?mod=space&uid=12734&do=blog&id=1952 大赞博主!解决了困扰了好几天的问题 java中不带package的程序和带package的程序编译的方式是不同的. 一.不带package的程序建立个HelloWorld.java的文件,放入C:\,内容如下:public class HelloWorld{   public static void main(String args

java中不带package和带package的编译运行方式

Java中不带package的程序和带package的程序编译的方式是不同的. 一.不带package的程序建立个HelloWorld.java的文件,放入C:\,内容如下:public class HelloWorld{   public static void main(String args[])   //向屏幕上写字符串"HelloWorld!"    {      System.out.println("HelloWorld!");    }} 1.编译 

javac一次性编译多个包下的.java文件

如题是我想要知道的,然后在网上搜了一下 下面是在某些帖子里看到别人说的只言片语 =========================================================== 标准的javac可以跟一个@加一个文件名,该文件里保存了源文件列表,使用下面的命令:    javac   @sourcefile =========================================================== cd   xxx       dir   *.j

【Java编译】含package的类文件编译

含package的类文件编译: package com.zhangxueliang.setdemo; public class Demo1 { public static void main(String[] args) { System.out.println("123456"); } } package com.zhangxueliang.setdemo; import java.util.HashSet; /* * 使用HashSet存储自定义对象并遍历 * 通过查看源码发现:

Ubuntu 11.10 (Oneiric)上编译带utrace补丁的内核 转

Ubuntu 11.10 (Oneiric)上编译带utrace补丁的内核 首先准备linux内核编译环境: sudo apt-get install fakeroot build-essential crash kexec-tools makedumpfile kernel-wedge kernel-package sudo apt-get build-dep linux sudo apt-get install git-core libncurses5 libncurses5-dev lib

Javac早期(编译期)

从Sun Javac的代码来看,编译过程大致可以分为3个过程: 解析与填充符号表过程. 插入式注解处理器的注解处理过程. 分析与字节码生成过程. Javac编译动作的入口是com.sun.tools.javac.main.JavaCompiler类,上述3个过程的代码逻辑集中在这个类的compile()和compile2()方法中,整个编译最关键的处理就由图中标注的8个方法来完成,下面我们具体看一下这8个方法实现了什么功能. 解析与填充符号表 解析步骤由上图中的parseFiles()方法(过程

java下包内继承时编译不过解决方案

代码源自<java核心技术一卷> 抽象表示如下: ManagerTest.java package inheritance; ... public class ManagerTest { } 存放于:inheritance/ManagerTest.java Manager.java package inheritance; ... public class Manager { } 存放于:inheritance/Manager.java Employee.java package inheri

JVM(二),Java怎样实现一次编译到处运行(平台无关性)

二.Java怎样实现一次编译到处运行(平台无关性) 1.java平台无关性原理 Java源码首先被编译成字节码,再由不同平台的JVM进行解析,JAVA语言在不同的平台上运行时不需要进行重新编译,Java虚拟机在执行字节码的时候,把字节码转换成具体平台上的机器指令. 2.为什么JVM不直接将源码进行编译成机器码去执行 (1)准备工作太过繁琐 JVM每次进行编译的时候都会对源代码进行各种检查,纠错 (2)兼容性 JVM不仅仅可以给java语言编译成的class文件进行解释,还可以对任何语言,只要是解

java命令:javac/java/javap

一.javac 1. 编译.java文件,生成字节码文件 2. 例子:javac a.java,在当前路径下生成a.class文件 3. 可以用-d参数指定生成文件的路径 二.java 1. 执行.class的字节码文件 2. 命令:java a.class 三.javap 1. jdk自带的反编译工具,把字节码反编译为汇编代码,用于帮助开发中深入理解Java编译器的机制 2. 反编译后的信息:汇编指令.本地变量表.异常表.常量池等 3. 命令:javap -c a.class 参考: http