zoukankan      html  css  js  c++  java
  • java cmd常用命令

    熟悉Java的常用命令

    面试例题11:使用jar命令。

    请使用jar命令,将test文件夹压缩成.jar文件,并简述其压缩包的结构。

    考点:对于Java程序员来说,更多情况下是使用集成Java开发工具,例如JBuilder、Eclipse等,而对于最基本的Java编译和常见的命令行工具往往都不熟悉,这个面试例题主要考查求职者对于Java命令行基本工具的使用,从而了解求职者对Java编程的熟悉程度。

    出现频率:★★★

    解析

    熟练的Java开发者应该掌握常用的Java命令行工具。求职者应该熟练掌握javac、java和jar等工具。

    1.javac

    javac是JDK的标准编译工具,常见的形式为:javac <选项> <源文件>。它可能的选项包括:

    -g:生成所有调试信息。

    -g:none:生成无调试信息。

    -g:{lines,vars,source}:生成只有部分调试信息。

    -nowarn:生成无警告。

    -verbose:输出关于编译器正在做的信息。

    -deprecation:输出使用了不鼓励使用的API的源程序位置。

    -classpath <路径>:指定用户类文件的位置。

    -sourcepath <路径>:指定输入源文件的位置。

    -bootclasspath <路径>:覆盖自举类文件的位置。

    -extdirs <目录(多个)>:覆盖安装的扩展类的位置。

    -d <目录>:指定输出类文件的位置。

    -encoding <编码>:指定源文件中所用的字符集编码。

    -target <版本>:生成指定虚拟机版本的类文件。

    常见的问题:在使用javac编译.java源文件时找不到jar包,则需使用-classpath选项。例如:

    javac -classpath .;jar01.jar;jar02.jar;……;jarN.jar class_name.java

    使用-classpath选项,指定了在编译Java源代码时,用到类库的位置。一般用于该类库不在当前CLASSPATH的环境变量中。

    2.java

    java命令是JDK默认的java执行程序,在这里值得注意的是在执行带包的.class文件时,需要使用标准的Java包形式。例如:

    java com.nsfc.hello

    3.jar

    随着JDK安装,在JDK安装目录下的bin目录中存在一个可执行文件,Windows下文件名为jar.exe,Linux下文件名为jar。它的运行需要用到JDK安装目录下lib目录中的tools.jar文件。jar命令行格式为:

    jar {ctxu}[vfm0M] [jar-文件] [manifest-文件] [-C 目录] 文件名

    其中{ctxu}是jar命令的子命令,每次jar命令只能包含一个子命令,这些子命令含义如下。

    -c:创建新的JAR文件包。

    -t:列出JAR文件包的内容列表。

    -x:展开JAR文件包的指定文件或者所有文件。

    -u:更新已存在的JAR文件包(添加文件到JAR文件包中)。


    [vfm0M]中的选项可以任选,也可以不选,它们是jar命令的选项参数。

    -v:生成具体报告并打印到标准输出。

    -f:指定JAR文件名,通常这个参数是必须的。

    -m:指定需要包含的MANIFEST清单文件。

    -0:只存储,不压缩,这样产生的JAR文件包会比不用该参数产生的体积大,但速度更快。

    -M:不产生所有项的清单(MANIFEST〕文件,此参数会忽略-m参数。

    [jar-文件]:即需要生成、查看、更新或者解开的JAR文件包,它是-f参数的附属参数。

    [manifest-文件]:即MANIFEST清单文件,它是-m参数的附属参数。

    [-C 目录]:表示转到指定目录下去执行这个jar命令的操作。它相当于先使用cd命令转到该目录下,再执行不带-c参数的jar命令,它只能在创建和更新JAR文件包的时候使用。

    文件名:指定一个文件/目录列表,这些文件/目录就是要添加到JAR文件包中的文件/目录。假如指定了目录,那么jar命令打包的时候会自动把该目录中的所有文件和子目录打入包中。

    使用JDK的jar命令打包,会自动在压缩包中生成一个META-INF目录,其中有一个MANIFEST.MF文件。

    使用jar命令进行如下压缩:

    jar cf test.jar test

    即将当前目录下的test目录所有文件压缩到test.jar文件中,使用WinRaR软件可以看到该压缩文件的目录结果如图2.6所示。

    (点击查看大图)图2.6 jar压缩文档的结构
    答案

    可以使用"jar cf test.jar test"命令来完成压缩。压缩包中,包含一个test文件夹和一个META-INF文件夹,其中有一个MANIFEST.MF文件。

    面试例题12:如何执行main()方法。

    利用Java SDK中哪一条命令能够执行test的main()方法?

    (a)java test。

    (b)javac test。

    (c)java test.java。

    (d)java test.class。

    (e)java test.main。

    考点:考查求职者对java命令的熟悉程度。

    出现频率:★★★

    解析

    求职者容易出现错误的是选择了(d),实际上,java命令后面只需要class文件的名称就可以,不用加入.class全名。如果使用java test.class命令,系统会认为这是一个包的结构,会查找test.class.class文件。会出现如下异常信息:

    Exception in thread "main" java.lang.NoClassDefaultError:test/class
    提示找不到相应的类文件。

    答案:(a)。

  • 相关阅读:
    内存泄漏 Memory Leaks 内存优化 MD
    Handler Thread 内部类引起内存泄露分析
    为什么不取消注册BroadcastReceiver会导致内存泄漏
    WebChromeClient 简介 API 案例
    WebViewClient 简介 API 案例
    java.net.URI 简介 文档 API
    android.net.Uri 简介 API
    RV 多样式 MultiType 聊天界面 消息类型 MD
    JS函数声明与定义,作用域,函数声明与表达式的区别
    CSS中table tr:nth-child(even)改变tr背景颜色: IE7,8无效
  • 原文地址:https://www.cnblogs.com/ftm-datablogs/p/5504195.html
Copyright © 2011-2022 走看看