(七)javac编译
文章目录
所有操作在window下完成。
1.基本格式
javac [目标路径] [源文件]
目标路径即编译结果存放位置,后续详细讲解。源文件则为编译所需的原始文件,包括*.java 和jar包。
2.目标路径
目标路径为编译完成后*.class文件存放位置。
2.1 缺省项
目标路径可省略。如果省略则存放在当前位置。(前提是在当前目录运行cmd)。
javac Test.java
2.2 指定路径
指定路径需要参数-d,几种形式如下所示:
2.2.1 全路径
javac -d E:\javactest\ Test.java
生成的文件放在E:\javactest\下。
2.2.2 相对路径
(一)生成文件放在当前目录下,如果Test.java中如果有包名,则在子文件下。
javac -d . Test.java
(二)生成文件放在当前目录下classes,如果Test.java中如果有包名,则在子文件下。
javac -d ./classes Test.java
(三)生成文件放在当前目录下classes,如果Test.java中如果有包名,则在子文件下。
javac -d classes Test.java
3.源文件
源文件包括自己的*.java文件以及jar包。单个文件直接放文件名即可。
3.1 无第三方库
无第三方库时直接加文件,不同源文件之间用空格分开,对于含有空格的文件路径需要双引号。
3.1.1 基本方法
javac -d ./classes Test.java Test01.java
3.1.2 添加目录
除添加Test.java Test01.java两个文件外,还需要将当前目录src中所有*.java文件编译。
javac -d classes Test.java Test01.java src/*.java
3.1.3 添加大量文件
当大量文件存在时可将所有文件位置放在一个文件下,并采用@添加此文件。文件形式如下所示。

下述命令 会将Test.java 以及filelist.txt下所示所有文件打包。
javac -d classes Test.java @filelist.txt
3.2 添加第三方库
通过-classpath后者-cp添加。
3.2.1 基本方法
javac -d classes -classpath XXXX.jar @filelist.text
3.2.2 添加多个文件
用分号添加多个文件
javac -d classes ;XXXX.jar;d:\XXX\*.jar @filelist.text
4.生成jar包
通过如下命令即可生成jar包,即将classes\com\ii\LL01下的class打包成test.jar
jar cf test.jar classes\com\ii\LL01
(七)javac编译的更多相关文章
- javac编译不同目录的源码提示找不到符号
对于单个文件的且不引用其他类文件的java源码用javac编译大家都很熟悉即 javac mycode.java 但是如果这个文件引用到了其他的类文件,在进行编译的时候就会提示找不到符号,这时我们需要 ...
- javac 编译与 JIT 编译
编译过程 不论是物理机还是虚拟机,大部分的程序代码从开始编译到最终转化成物理机的目标代码或虚拟机能执行的指令集之前,都会按照如下图所示的各个步骤进行: 其中绿色的模块可以选择性实现.很容易看出,上图中 ...
- Javac编译和JIT编译
编译过程 不论是物理机还是虚拟机,大部分的程序代码从开始编译到最终转化成物理机的目标代码或虚拟机能执行的指令集之前,都会按照如下图所示的各个步骤进行: 其中绿色的模块可以选择性实现.很容易看出,上图中 ...
- javac编译原理(一)
我们都知道,计算机只能识别二进制语言,是不能直接识别java c c++等高级语言的.将高级语言转化成计算机可以是别的二进制语言,这个过程就叫编译. 有次面试,面试官问了一道“java的编译原理是什么 ...
- Javac编译与JIT编译
本文转载自:http://blog.csdn.net/ns_code/article/details/18009455 编译过程 不论是物理机还是虚拟机,大部分的程序代码从开始编译到最终转化成物理机的 ...
- Linux下使用javac编译
Linux下使用javac编译Hadoop程序 首先要配置好Hadoop, 给出两个教程 Hadoop安装教程单机/伪分布式配置Hadoop2.6.0/Ubuntu14.04 Hadoop集群安装配置 ...
- 使用javac编译zookeeper项目
这里记录zookeeper编译源代码上的一些细节的问题. 网上不少关于如何使用ant eclipse来构建zookeeper对应的eclipse工程的记录.这里就不再过多赘述.只做简单阐述. 这里主要 ...
- 【深入Java虚拟机】之七:Javac编译与JIT编译
转载请注明出处:http://blog.csdn.net/ns_code/article/details/18009455 编译过程 不论是物理机还是虚拟机,大部分的程序代码从开始编译到最终转化成物理 ...
- javac编译后运行提示找不到或无法加载主类
第一种常见错误: package demo_01; public class hello { public static void main(String[] args) { System.out.p ...
- Javac编译原理 《深入分析java web 技术内幕》第四章
javac编译的四个主要的流程: 词法分析器:将源码转换为Token流 将源代码划分成一个个Token(找出java语言中的关键字) 语法分析器:将Token流转化为语法树 将上述的一个个Token组 ...
随机推荐
- chsime.exe cpu占用高
打开管理员的命令提示符,运行 if exist "%SystemRoot%\System32\InputMethod\CHS\ChsIME.exe" (takeown /f &qu ...
- 从壹开始学习NetCore 45 ║ 终于解决了事务问题
一.项目说明 哈喽,又来写文章了,原来放假可以这么爽,可以学习和分享,
- Spring Cloud Config 配置中心实践过程中,你需要了解这些细节!
本文导读: Spring Cloud Config 基本概念 Spring Cloud Config 客户端加载流程 Spring Cloud Config 基于消息总线配置 Spring Cloud ...
- 阿里云服务器ecs配置之安装tomcat
1.下载链接:https://tomcat.apache.org/download-70.cgi,选择需要的版本下载(.tar.gz文件后缀) 2.通过Xshell.Xftp上传至CentosX的 某 ...
- httprouter框架 (Gin使用的路由框架)
之前在Gin中已经说到, Gin比Martini的效率高好多耶, 究其原因是因为使用了httprouter这个路由框架, httprouter的git地址是: httprouter源码. 今天稍微看了 ...
- springmvc中重定向该如何处理?
如果登录成功,会重定向到系统首页 response.sendRedirect("jsp/frame.jsp"); 在springmvc中,应该如何处理?是否可以直接使用 retur ...
- idea中的java web项目(添加jar包介绍)和java maven web项目目录结构
java web项目 web项目下web根目录名称是可以更改的 idea中新建java web项目,默认src为Sources Root,当然也可以手动改,在Sources Root下右键只能新建Pa ...
- orm加强版
目录 十三式 2式(针对外键查询优化) select_related和prefetch_related prefetch_related 查询返回值类型 不等式查询 关键字查询 时间查询 跨表查询 组 ...
- python编程基础之十四
列表的增加元素 l1 = [10, 20, 30] l1.append(40) # 末尾追加一个值为40的元素 l1.extend([50, 60]) # 末尾追加一系列元素,extend + 可 ...
- Ned 的难题
题目描述 Ned 再也看不下去 Robert 的种种恶习, 于是他决定出一道题来让他醒悟. Ned 的题目是这样: 给出一个有 n 个数的序列, 求其中所有连续子序列的数的最大公因数的乘积模 1000 ...