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. 堆--LogN的数据结构

    我们这里的堆是指用来表示元素集合的一种数据结构 一个二叉树是一个堆是由堆的两个性质决定的(以小根堆为例) 1:任何节点的值都小于或等于其子节点的值 2:该二叉树最多在两层上具有叶节点,其中最底层的叶节 ...

  2. tomcat修改内存

    windows: 修改bin/catalina.bat, 第一行添加 set JAVA_OPTS=-Xms256m -Xmx512m linux: 修改bin/catalina.sh 第一行添加 JA ...

  3. Rotate Image——数学相关

    You are given an n x n 2D matrix representing an image. Rotate the image by 90 degrees (clockwise). ...

  4. HDR文件格式简介及其读写函数

    转自:http://blog.csdn.net/lqhbupt/article/details/7828827 1.HDR简介HDR的全称是High-DynamicRange(高动态范围).在此,我们 ...

  5. Convolutional Neural Networks卷积神经网络

    转自:http://blog.csdn.net/zouxy09/article/details/8781543 9.5.Convolutional Neural Networks卷积神经网络 卷积神经 ...

  6. kubernetes如何要使用用户名和密码登陆harbor以拉取docker镜像,应该如何操作?

    还好,网上有相应的CASE处理. http://www.jianshu.com/p/ffbfb44dc496 =========================== 先生成名为为regsecret的S ...

  7. AC日记——Dynamic Ranking 洛谷 P2617

    Dynamic Ranking 思路: 可持久化树状数组: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 1 ...

  8. 转型(java)(.net)

    /** * 父类 */ class Animal { public void eat() { //输出 父类吃.... } } class Bird extends Animal { public v ...

  9. 经典算法-最长公共子序列(LCS)与最长公共子串(DP)

    public static int lcs(String str1, String str2) { int len1 = str1.length(); int len2 = str2.length() ...

  10. Python进阶:@property 动态属性

    Python进阶:@property 动态属性 Python 动态属性的概念可能会被面试问到,在项目当中也非常实用,但是在一般的编程教程中不会提到,可以进修一下. 先看一个简单的例子.创建一个 Stu ...