1、javac(编译java源文件)

  javac是用来编译.java文件的。

  例子:

  package com.fjassa.domain;  public class Human、public class Chinese extends Human   #Chinese继承Human

  package com.fjassa.dao;  public class UserDao(private Human human)  #UserDao类持有Human成员

如何编译Human类、Chinese类?

    javac -d tbin src/com/fjassa/domain/Human.java  #编译Human.java到tbin目录下

javac -d tbin src/com/fjassa/domain/Chinese.java  #报错,找不到Human.class,为什么?我们刚刚明明把Human编译到tbin下面了,其实呢,javac编译的时候是需要依赖jar包的,默认的classpath会自动记载${JAVA_HOME}/jar下的所有jar包。这就是我们在使用jdk内置java对象的时候,不会报错的原因,如果需要编译依赖spring包的类,那么classpath需要指定所需spring的jar包

    javac -classpath tbin/ -d tbin src/com/fjassa/domain/Chinese.java  #Ok

注意一点:在linux下classpath用:分割,在windows下用;分割

javac -classpath .:tbin/ -d tbin src/com/fjassa/domain/Chinese.java  #linux

     javac -classpath .;tbin/ -d tbin src/com/fjassa/domain/Chinese.java  #linux

如何一次性编译上述这些互相依赖的类?

javac -d sbin/ src/com/fjassa/*/*   # -d表示编译后存放的文件目录,上述存在依赖关系,也就是说如果要编译Chinese类必须先编译Human,要编译UserDao类必须编译Human,所以一次性编译这些类,让javac自己去判断依赖,如果单独编译一个Chinese.java,会报Human类未编译错误。

2、java(运行java对象)

  运行编译后的.class字节码java对象。       

java -Xmx500m -Dlog.dir=/tmp/zzz -classpath .:/tmp/java/libb com.fjsaas.demo

java jar test.jar #classpath在jar包中的META-INF/MANIFEST.MF Class-Path属性指定,-classpath指定无效,运行的java对象则由Main-Class属性指定

  例子:

   cd tbin/下

java -classpath . com.fjassa.dao.UserDao #运行成功

java常用命令行的更多相关文章

  1. Java常用命令行工具

    命令基于Sun JDK,用于监控和诊断HotSpot的java 虚拟机. 对应的可执行文件位于$JAVA_HOME/bin/下 jps-虚拟机进程状况工具 选项 作用 -q 只输出LVMID,同进程p ...

  2. java常用命令行指令

    javac 将java源文件编译成class字节码文件 javac HelloWorld.java java (1)运行class文件 java HelloWorld 注意java命令后面不要加.cl ...

  3. (转)Mysql常用命令行

    原文:http://www.cnblogs.com/TsengYuen/archive/2012/01/11/2319034.html Mysql常用命令行 Mysql经常使用号令行大全 熬头招.my ...

  4. php开发面试题---Mysql常用命令行大全

    php开发面试题---Mysql常用命令行大全 一.总结 一句话总结: 常见关键词:create,use,drop,insert,update,select,where ,from.inner joi ...

  5. Linux 常用命令行

    Linux常用命令行 第一部分: cd命令 第二部分:文件操作 第三部分:压缩包操作

  6. vi 常用命令行

    vi 常用命令行 1.vi 模式  a) 一般模式: vi 处理文件时,一进入该文件,就是一般模式了.  b) 编辑模式:在一般模式下可以进行删除,复制,粘贴等操作,却无法进行编辑操作.等按下‘i,I ...

  7. GCC常用命令行一览表

    GCC常用命令行一览表 这些常用的 gcc/g++ 命令行参数,你都知道么?1. gcc -E source_file.c-E,只执行到预编译.直接输出预编译结果. 2. gcc -S source_ ...

  8. Linux - 常用命令行(一)

    今天和大家分享一些最基本常用命令行:也是作为新手最应该了解掌握的 ls 命令:用来显示指定工作目录下内容 dir命令:与ls命令一致 cd  命令:变化工作目录 pwd命令:显示用户当前的工作路径,显 ...

  9. java 常用命令工具

    1. jmap (1)分析堆信息 jmap -heap java_pid (2) 导出 java进程 5460 的堆内容 到文件 heap.map ,然后使用 jhat 分析 jmap -dump:l ...

随机推荐

  1. position:fixed部分版本的浏览器不支持

    ie6-ie8浏览器不支持这个属性 .fixed{         position:fixed; /*对于火狐等其他浏览器需要设置的*/         top:700px;  /*同上*/     ...

  2. POJ-2398

    Toy Storage Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 4243   Accepted: 2517 Descr ...

  3. Linux 基础——查看文件内容的命令

    第四天,继续学习.今天看到一句话,"你以为你以为的就是你以为的吗?",这句话还是有点意思啊!!! 一.查看文件内容的命令 file dest:查看文件的类型.在Linux中,文件的 ...

  4. Git----创建远程分支,并将文件上传到创建的远程分支上

    1.首先创建一个远程仓库 2.将远程仓库克隆到本地 (1)本地新建文件夹,命令行进入文件夹,执行clone操作 (2) git clone git@github.com:Lucky-Syw/lucky ...

  5. 197. Rising Temperature

    Given a Weather table, write a SQL query to find all dates' Ids with higher temperature compared to ...

  6. AC日记——小A的糖果 洛谷七月月赛

    小A的糖果 思路: for循环贪心: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 100005 #defi ...

  7. OpenStack 计算服务 Nova计算节点部署 (九)

    如果使用vmware虚拟机进行部署,需要开启虚拟化:如果是服务器需要在bios上开启. Nova Compute nova-compute 一般运行在计算节点上,通过Messages Queue接收并 ...

  8. .net mvc禁用浏览器缓存

    我正在寻找方法来禁用 整个 ASP.Net MVC 网站 的浏览器缓存 我发现以下方法, Response.Cache.SetCacheability(System.Web.HttpCacheabil ...

  9. LOJ #6281. 数列分块入门 5-分块(区间开方、区间求和)

    #6281. 数列分块入门 5 内存限制:256 MiB时间限制:500 ms标准输入输出 题目类型:传统评测方式:文本比较 上传者: hzwer 提交提交记录统计测试数据讨论 5   题目描述 给出 ...

  10. CF1025B Weakened Common Divisor【数论/GCD/思维】

    #include<cstdio> #include<string> #include<cstdlib> #include<cmath> #include ...