• javac 命令


    原文链接:http://blog.csdn.net/hudashi/article/details/7058998   http://blog.csdn.net/hudashi/article/details/7058999
    javac [ options ] [ sourcefiles ] [ @files ]
    @files        一个或多个对源文件进行列表的文件。就是把源文件列表写入到文件中,将文件作为参数

    为缩短或简化javac命令,可以把要编译的java源文件名列在一个文件,文件名之间用空格或回车进行分割,这就适用于源文件很多的情况

    javac -d clsasses @src.txt

    src.txt文件的内容:
    srccom obinHello.java srccom obinPeople.java
    srccomhubinUtil.java

    参数

    -d 目录

    指定生成的class目标文件的目录
    如果文件是有包结构的,会自动按照包结构生成文件夹
    如果没有指定-d,class文件和源文件在同一个目录下面
    -bootclasspath,-extdirs,-classpath和-cp
    JDK在编译一个java源文件时,搜索类文件的方式和顺序如下:
        Bootstrap classes,Extension classes,User classes
    Bootstrap默认的是JDK自带的jar或zip文件,它包括jrelib下rt.jar等文件,JDK首先搜索这些文件.
    可以通过-bootclasspath来设置它。文件之间用分号";"进行分割。
    
    Extension默认的是位于jre"lib"ext目录下的jar文件,JDK在搜索完Bootstrap后就搜索该目录下的jar文件.
    可以通过-extdirs来设置。文件之间用分号";"来进行分割
    
    User classes搜索顺序为当前目录、环境变量 CLASSPATH、-classpath。
    -cp 和 -classpath 是同义词,参数意义是一样的。classpath参数太长了,所以提供cp作为缩写形式
    它们用于告知JDK搜索目录名、jar文档名、zip文档名,用分号";"进行分隔。
    -encoding
    设置源文件编码名称,例如UTF-8
    -verbose
    冗长输出。开启该参数,你将看到编译器编译java源码的详细过程
     
    -D 是设置系统的属性
    当我们引入外部jar包的时候,使用-classpath、-cp 指定jar包,如果要指定多个jar,需要使用;隔开(Linux下为:),必须一个一个写,当jar包太多的时候,可以使用:
    -Djava.ext.dirs=lib  其中lib是存放外部jar包的文件夹
     
    编译的例子
    javac -d classesPath -Djava.ext.dirs="lib" -encoding UTF-8  src/puma/*.java
     
    java用于运行java程序,比较简单,注意两点
    1,可以使用参数 -cp指定运行时以来的包
    2,对于带包名字的类,要上完整的包名
     
    总结:
    javac 的参数列表主要包括:
    1,-encoding 指定编码集
    2,外部依赖的jar包、源文件以及其他文件. 用 -cp 、-Djava.ext.dirs指定
    3,class目标文件夹  -d
    4,要编译的源文件,可以使用文件列表、文件内数据、通配符等
     
     
  • 相关阅读:
    最近的题越来越难了,卧槽,搞一上午一题不会,题解也看不懂
    hdu 4630 树状数组 ****
    hdu 3473 划分树 ***
    hdu 3360 最小点覆盖 **
    hdu 1507 记录路径的二分匹配 **
    poj 3177 边双联通 **
    hdu 4612 边双联通 ***
    Elasticsearch聚合后分页深入详解
    redis 五种数据类型及其使用场景
    再有人问你分布式锁,这篇文章扔给他
  • 原文地址:https://www.cnblogs.com/Coder-Pig/p/6752404.html
Copyright © 2020-2023  润新知