- 浏览: 82621 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
KeatsLee:
这篇文章是自己总结的吗?还是来自某本书,麻烦告知一下。觉得很经 ...
Java IO -
di1984HIT:
写的不错啊。
hive 实现多行转一行处理方法 -
di1984HIT:
大数据量分析。
hive海量数据--统计一年网站各个产品的UV
javac和java是sun提供的编译java文件和执行class文件的命令工具,其经过ant包装之后,可以说是很强大很方便,然后有时候写的小程序去用IDE编译,运行,显得的有些庞大,轻便轻盈的办法当然是用javac与java了。
在看下面的描述之前,请参考其他方法安装好java环境,配置好java环境变量(记得CLASSPATH最前面是 .;),
下面的示例文件纯为显示所写,基本上没什么用途,其中jdk版本——java version "1.6.0_12"。
1.单文件编译、运行
用javac和java编译运行单文件是很容易的:
假如我们有Hello.java
#Hello.java
public class Hello{
public static void main(String []args){
System.out.println("Welcome to Java!");
}
}
cmd到该文件所在目录,执行
javac Hello.java
java Hello
就ok了。
2.多文件编译,包引用文件编译、运行
假如我们有如下目录结构
------src
------com
------eho
-------util
---------CMath.java
---------CTime.java
-------test
---------Test.java
------out
其中src目录是java源代码目录,out是用来存放编译之后的class文件的目录,在编译java文件之前需要手动建立存放class文件的父文件夹,在这里我们建立了out文件夹来存放。
文件
//CMath.java
package com.eho.util;
public class CMath {
public static int add(int a, int b){
return a + b;
}
public static int div(int a, int b){
return a/b;
}
}
//CTime.java
package com.eho.util;
import java.util.*;
import java.text.*;
public class CTime {
public static String strDatetime(){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return sdf.format(new Date());
}
}
//Test.java
package com.eho.test;
import com.eho.util.*;
public class Test {
public static void main(String[] args) {
// test
int a = 4, b =2;
int sum = CMath.add(a, b);
System.out.println("a + b = " + sum);
int div = CMath.div(a, b);
System.out.println("a / b = " + div);
// print now
System.out.println(CTime.strDatetime());
}
}
编译及运行步骤:
a:cmd到src所在的目录
b:执行命令:javac -d ..\out com\eho\util\*.java (多文件编译)
c:执行命令:javac -d ..\out com\eho\test\*.java (编译包引用文件)
d:执行命令:java -cp ..\out com.eho.test.Test (运行包引用文件)
然后看到输出结果:
a + b = 6
a / b = 2
2009-03-03 23:08:08
在看下面的描述之前,请参考其他方法安装好java环境,配置好java环境变量(记得CLASSPATH最前面是 .;),
下面的示例文件纯为显示所写,基本上没什么用途,其中jdk版本——java version "1.6.0_12"。
1.单文件编译、运行
用javac和java编译运行单文件是很容易的:
假如我们有Hello.java
#Hello.java
public class Hello{
public static void main(String []args){
System.out.println("Welcome to Java!");
}
}
cmd到该文件所在目录,执行
javac Hello.java
java Hello
就ok了。
2.多文件编译,包引用文件编译、运行
假如我们有如下目录结构
------src
------com
------eho
-------util
---------CMath.java
---------CTime.java
-------test
---------Test.java
------out
其中src目录是java源代码目录,out是用来存放编译之后的class文件的目录,在编译java文件之前需要手动建立存放class文件的父文件夹,在这里我们建立了out文件夹来存放。
文件
//CMath.java
package com.eho.util;
public class CMath {
public static int add(int a, int b){
return a + b;
}
public static int div(int a, int b){
return a/b;
}
}
//CTime.java
package com.eho.util;
import java.util.*;
import java.text.*;
public class CTime {
public static String strDatetime(){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return sdf.format(new Date());
}
}
//Test.java
package com.eho.test;
import com.eho.util.*;
public class Test {
public static void main(String[] args) {
// test
int a = 4, b =2;
int sum = CMath.add(a, b);
System.out.println("a + b = " + sum);
int div = CMath.div(a, b);
System.out.println("a / b = " + div);
// print now
System.out.println(CTime.strDatetime());
}
}
编译及运行步骤:
a:cmd到src所在的目录
b:执行命令:javac -d ..\out com\eho\util\*.java (多文件编译)
c:执行命令:javac -d ..\out com\eho\test\*.java (编译包引用文件)
d:执行命令:java -cp ..\out com.eho.test.Test (运行包引用文件)
然后看到输出结果:
a + b = 6
a / b = 2
2009-03-03 23:08:08
发表评论
-
设置JVM启动属性,设置tomcat远程调试端口
2013-02-12 17:08 1029在eclipse中设置启动属性,或者在命令行运行时设置 ... -
Mysql不能连接
2011-01-11 11:07 1086com.mysql.jdbc.CommunicationsEx ... -
Java IO
2011-01-04 12:08 2277本篇主要讲述IO相关的 ... -
[J2SE]Map.Entry 类使用简介(转)
2010-12-10 09:30 878你是否已经对每次从Map中取得关键字然后再取得相应的值感觉厌倦 ... -
比较分析Vector,Arraylist,Hashtable,HashMap数据结构
2010-12-09 09:15 854线性表,链表,哈希表 ... -
JAVA jvm 参数 -Xms -Xmx -Xmn -Xss
2010-11-04 14:40 1194常见配置举例 堆大小 ... -
Error listenerStart
2010-11-04 14:37 830近日浏览论坛,发现好多人提问,都说在运行web程序时,服务器报 ... -
jvm内存调优经验总结
2010-11-04 14:37 855[color=blue][/color][size=x-sma ... -
java的final和static区别
2010-10-19 10:30 897final定义的变量可以看 ... -
Java设计模式中的11种
2010-10-14 17:35 835一:设计模式是最重要 ... -
Lucene源码分析-- Analyzer
2010-08-02 15:09 1352本文主要分析一下 Lucene输入部分——Analyzer(分 ... -
ik-analyzer
2010-08-02 15:05 1017IKAnalyzer是一个开源的,基于java语言开发的轻量级 ... -
Apache Tika文档处理工具
2010-08-02 13:58 2943随着计算机使用的日益普及以及互联网的无处不在,现在有各种语言的 ... -
JDK性能优化
2010-07-29 10:35 1614jvm的server版和client版在上面的表中,我们看到有 ... -
JDK和JRE的区别
2010-07-29 09:49 880简单的说JDK是面向开发人员使用的SDK,它提供了Java的开 ... -
JAVA Process类的简单学习
2010-07-08 14:59 1374(1)执行简单的DOS命令,如打开一个记事本 ... -
Java的多线程程序设计要点
2010-07-07 09:15 6771.多线程中有主内存和 ... -
Java打包指南-JAR文件包及jar命令详解
2010-07-06 17:28 807常常在网上看到有人询问:如何把 java 程序编译成 .exe ... -
JAVA RMI实现过程分析
2010-07-06 14:35 1779JAVA RMI 快速入门实例 本实例为参考多篇文章写就而成 ... -
CompletionService
2010-07-05 16:00 1012import java.util.concurrent. ...
相关推荐
在DOS环境下使用`javac`编译与`java`执行多个包下的`.java`文件是一项常见的Java开发任务。这通常涉及到对项目结构的理解、命令行操作以及掌握Java的编译和运行流程。下面我们将详细讲解这个过程。 首先,我们需要...
以下是对`javac`源代码及Java编译步骤的详细解析。 1. **词法分析**:编译的第一步是读取源代码文件,并将其分解为一个个最小的有意义单元——词法单元或标记。这些标记包括关键字、标识符、操作符、常量和分隔符等...
- **作用**:将资源文件(如图片、布局文件等)打包成一个单独的资源文件包,方便后续合并到最终的APK中。 6. **用apkbuilder.bat打包资源和classes.dex文件,生成unsigned.apk** - **工具介绍**:apkbuilder是一...
Java Class文件是Java程序经过编译后的二进制表示形式,它是Java虚拟机(JVM)执行的基础。本文将深入探讨Java类文件的结构、编译过程以及如何使用提供的工具进行查看。 一、Java类文件结构 Java源代码(.java文件...
- 当编译一个包含包声明的类时,编译后的 `.class` 文件应存放在对应包的目录结构中。 **包的使用示例**: ```java package A; public class Hello { public static void main(String[] args) { System.out....
1. **编译时无需关注包结构**,无论使用哪种方法,只要让`javac`命令找到源文件即可。可以通过相对或绝对路径为`javac`提供源文件的位置信息。 2. **关于`classpath`的理解**,`-cp`或`-classpath`选项以及`...
`<target>`标签用于定义一系列要执行的任务,`<taskdef>`用于引入自定义任务,`<property>`用于设置属性值,`<copy>`用于复制文件,`<jar>`用于创建JAR文件,`<javac>`用于编译Java源代码,`<delete>`用于删除文件或...
`<mkdir>`任务用于创建目录,`<javac>`任务用于编译Java源代码,`<jar>`任务则用于创建`JAR`文件。 在`<jar>`任务中,`destfile`属性指定`JAR`文件的路径,`basedir`属性指定了包含类文件的目录,这些类文件会被...
在Java编程语言中,"编译好的CLASS文件"是指经过Java编译器(javac)处理的源代码(.java文件)所生成的目标文件。这些文件以二进制格式存储,可以直接由Java虚拟机(JVM)执行。CLASS文件包含了Java类或接口的字节...
- **编译路径**:在编译一个包含包的类时,如`A`类,如果它位于包`edu.main`中,并且引用了`edu.ustc`包下的`B`类,那么`A.java`文件应位于`<base_dir>/edu/main`目录下。此时,编译`A.java`需要显式指定其完整路径...
### 安卓反编译dex文件格式实例分析 #### 第一部分:创造一个可供分析的Hello.dex ##### 测试环境 为了进行本次实验,我们需要搭建一个可靠的测试环境。本实验使用了以下配置: - **操作系统**: Ubuntu 12.04 64...
深入理解javac的源代码对于Java程序员来说,不仅能帮助理解编译过程,还能提升编程技能和优化代码的能力。在本文中,我们将探讨javac的工作原理、关键组件以及其在Java开发中的重要性。 一、javac的基本工作流程 1...
- **javac**:Java的官方编译器,负责将.java文件编译成.class字节码文件。 - **src**:在Java开发中,src通常代表源代码目录,存放未编译的Java源文件。 - **源代码**:程序的原始文本形式,程序员可以直接理解和...
当Java源代码(.java文件)通过Javac编译器编译后,会生成字节码文件,即.class文件。这些文件包含Java虚拟机(JVM)可执行的指令,但并不直接包含源代码。因此,如果没有源代码,就无法直接阅读和理解类文件中的逻辑。 ...
如果希望编译后的`.class`文件被放置在一个与包结构相匹配的目录结构中,可以使用`-d`选项来指定输出目录: ```bash javac -d /home/tarena/a/b /home/tarena/Test.java ``` 执行此命令后,`Test.class`文件...
这条命令告诉`javac`编译器将生成的字节码(`.class`文件)放在`classes`目录下,按照源代码的包结构组织。 2. 编译`HelloWorld.java`: ``` javac -d classes -cp classes src\org\xalg\test\HelloWorld.java ...
`javac.jar` 是 OpenJDK 中 `javac` 编译器的源码包,它揭示了 Java 编译过程的内部工作原理,对于学习 Java 编译器的工作机制、优化代码性能以及进行自定义编译器开发具有重要意义。 在 OpenJDK 的 `javac1.7` ...
其中,Java代码由JDK的javac编译成.class文件,再通过Dex工具转化为.dex文件,这是Android设备上运行的格式。 2. **资源打包**:资源文件(如布局、图片、字符串等)被AAPT(Android Asset Packaging Tool)处理并...
Java源代码在被Javac编译器处理后,会转化为一种中间格式,即字节码(.class文件),这种格式与平台无关,可以在任何支持Java的环境中运行。字节码是Java虚拟机(JVM)理解和执行的基础。 然后,我们引出“反编译”...