`

JAVA命令(1): javac,java及参数

 
阅读更多

/**1、没有包结构(默认包)

===============================================================================

*/

        

public class HelloWorldV1 {
	public static void main(String[] args) {
		System.out.println("hello world v1 .....");
	}
}

 

        D:\work\javacmd>javac HelloWorldV1.java

        

        D:\work\javacmd>java HelloWorldV1

        hello world v1 .....

        

        D:\work>java HelloWorldV1

        Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorldV1

        

        D:\work>java -cp D:\work\javacmd\ HelloWorldV1

        hello world v1 .....

        

        D:\work\javacmd>javac -verbose HelloWorldV1.java

        [解析开始时间 HelloWorldV1.java]

        [解析已完成时间 11ms]

        [源文件的搜索路径: .,C:\Program Files\Java\jdk1.6.0_39\lib,C:\Program Files\Jav

        a\jdk1.6.0_39\lib\tools.jar]

        [类文件的搜索路径: C:\Program Files\Java\jdk1.6.0_39\jre\lib\resources.jar,rt.jar,jsse.jar...tools.jar]

        [正在装入 java\lang\Object.class(java\lang:Object.class)]

        [正在装入 java\lang\String.class(java\lang:String.class)]

        [正在检查 HelloWorldV1]

        [正在装入 java\lang\System.class(java\lang:System.class)]

        [正在装入 java\io\PrintStream.class(java\io:PrintStream.class)]

        [正在装入 java\io\FilterOutputStream.class(java\io:FilterOutputStream.class)]

        [正在装入 java\io\OutputStream.class(java\io:OutputStream.class)]

        [已写入 HelloWorldV1.class]

        [总时间 191ms]

        

        

        win7下使用powershell,类似cmd,但可以使用shell命令

        PS D:\work\javacmd> java -verbose HelloWorldV1 > r.txt 

        [Opened C:\Program Files\Java\jdk1.6.0_39\jre\lib\rt.jar]

        [Loaded java.lang.Object from C:\Program Files\Java\jdk1.6.0_39\jre\lib\rt.jar]

        [Loaded java.io.Serializable from C:\Program Files\Java\jdk1.6.0_39\jre\lib\rt.jar]

        [Loaded java.lang.Comparable from C:\Program Files\Java\jdk1.6.0_39\jre\lib\rt.jar]

        [Loaded java.lang.CharSequence from C:\Program Files\Java\jdk1.6.0_39\jre\lib\rt.jar]

        [Loaded java.lang.String from C:\Program Files\Java\jdk1.6.0_39\jre\lib\rt.jar]

        [Loaded java.lang.reflect.GenericDeclaration from C:\Program Files\Java\jdk1.6.0_39\jre\lib\rt.jar]

        [Loaded java.lang.reflect.Type from C:\Program Files\Java\jdk1.6.0_39\jre\lib\rt.jar]

        [Loaded java.lang.reflect.AnnotatedElement from C:\Program Files\Java\jdk1.6.0_39\jre\lib\rt.jar]

        [Loaded java.lang.Class from C:\Program Files\Java\jdk1.6.0_39\jre\lib\rt.jar]

        [Loaded java.lang.Cloneable from C:\Program Files\Java\jdk1.6.0_39\jre\lib\rt.jar]

        [Loaded java.lang.ClassLoader from C:\Program Files\Java\jdk1.6.0_39\jre\lib\rt.jar]

        [Loaded java.lang.ref.Reference,java.lang.reflect.*

        ...

        [Opened C:\Program Files\Java\jdk1.6.0_39\jre\lib\charsets.jar]

        ...

        [Loaded java.security.Principal from C:\Program Files\Java\jdk1.6.0_39\jre\lib\rt.jar]

        [Loaded HelloWorldV1 from file:/D:/work/javacmd/]

        hello world v1 .....

        [Loaded java.lang.Shutdown from C:\Program Files\Java\jdk1.6.0_39\jre\lib\rt.jar]

        [Loaded java.lang.Shutdown$Lock from C:\Program Files\Java\jdk1.6.0_39\jre\lib\rt.jar]

        加载300+类

        

        -classpath: 简写cp

        

        -verbose: 冗长输出。它包括了每个所加载的类和每个所编译的源文件的有关信息。

        

        -g: 生成所有的调试信息{包括vars-局部变量,缺省:{source-源文件,lines-行号}}

        -g:none

        

        -d: 设置生成的class文件的目录

                PS D:\work\javacmd> javac -verbose -d ./bin HelloWorldV1.java

        

        -sourcepath: 指定源文件路径,默认取classpath

                PS D:\work> javac -verbose -d ./javacmd/bin -sourcepath javacmd javacmd/HelloWorldV1.java

                PS D:\work> javac -verbose -d d:/work/javacmd/bin -sourcepath d:/work/javacmd javacmd/HelloWorldV1.java

 

 

/** 2、多个class文件。

===============================================================================

*/

package study.timeriver;

public class ConsoleV3 {
	public static void print(String str) {
		System.out.println("Console.print: "+str);
	}
	public static void main(String[] args) {
		System.out.println("I am ConsoleV3.....");
	}
}

 

package study.timeriver;

public class StringUtilV3 {
	public static void print(String str) {
		ConsoleV3.print("StringUtil.print: "+str);
	}
	public static void main(String[] args) {
		System.out.println("I am StringUtilV3.....");
	}
}

 

package study.timeriver;

public class HelloWorldV3 {
	public static void main(String[] args) throws Exception {
		StringUtilV3.print("hello world .....");
		Thread.sleep(1000000);
	}
}

 

        逐个编译class文件(3个文件:会自动编译关联的。但是不能运行。)

        PS D:\work\javacmd> javac -d ./classes ./src/study/timeriver/ConsoleV3.java

        PS D:\work\javacmd> java -cp ./classes study.timeriver.ConsoleV3

        I am ConsoleV3.....

        

        PS D:\work\javacmd> javac -cp ./classes -d ./classes ./src/study/timeriver/StringUtilV3.java

        PS D:\work\javacmd> java -cp ./classes study.timeriver.StringUtilV3

        I am StringUtilV3.....

        

        PS D:\work\javacmd> javac -cp ./classes -d ./classes ./src/study/timeriver/HelloWorldV3.java

        PS D:\work\javacmd> java -cp ./classes study.timeriver.HelloWorldV3

        Console.print: StringUtil.print: hello world .....

        

        

        打包根目录下面的文件:

        jar cvf helloworldv3.jar ConsoleV3.class HelloWorldV3.class StringUtilV3.class   

        jar打包与直接压缩的区别:多了一个文件: META-INF/MANIFEST.MF

                Manifest-Version: 1.0

                Created-By: 1.6.0_39 (Sun Microsystems Inc.)

                

        打包指定目录(无效)        

        PS D:\work\javacmd> jar cvf helloworldv3.jar .\classes        

        

        执行jar包

        PS D:\work\javacmd> java -jar .\helloworldv3.jar

        Failed to load Main-Class manifest attribute from .\helloworldv3.jar

        

        打包指定目录

        PS D:\work\javacmd\classes> jar cvf helloworldv3.jar .\study

        标明清单(manifest)

        增加:study/(读入= 0) (写出= 0)(存储了 0%)

        增加:study/timeriver/(读入= 0) (写出= 0)(存储了 0%)

        增加:study/timeriver/ConsoleV3.class(读入= 689) (写出= 404)(压缩了 41%)

        增加:study/timeriver/HelloWorldV3.class(读入= 393) (写出= 270)(压缩了 31%)

        增加:study/timeriver/StringUtilV3.class(读入= 739) (写出= 429)(压缩了 41%)

        

        修改META-INF/MANIFEST.MF

        Manifest-Version: 1.0

        Created-By: 1.6.0_39 (Sun Microsystems Inc.)

        Main-Class: study.timeriver.HelloWorldV3

        

        PS D:\work\javacmd\classes> java -jar .\helloworldv3.jar

        Console.print: StringUtil.print: hello world .....

 

/** 3、自定义bat批处理文件

===============================================================================

*/

 

        使用bat启动:timeriver.bat

        D:\work\javacmd\classes>timeriver.bat

        

        D:\work\javacmd\classes>echo exceute jar....

        exceute jar....

        

        D:\work\javacmd\classes>start "tt" "C:\Program Files\Java\jdk1.6.0_39\bin\java"

        -classpath "helloworldv3.jar" study.timeriver.HelloWorldV3

 

/** 4、tomcat的bat批处理文件

===============================================================================

*/

        

        tomcat的catalina.bat

        %_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION%

        

        使用

        echo _EXECJAVA.......................

        echo %_EXECJAVA%

        pause

        goto end

        输出变量。替换

        

        start "hh" "C:\Program Files\Java\jdk1.6.0_39\bin\java"  -Djava.util.logging.config.file="D:\tomcat\conf\logging.properties" -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs="D:\tomcat\endorsed" -classpath "C:\Program Files\Java\jdk1.6.0_39\lib\tools.jar;D:\tomcat\bin\bootstrap.jar" -Dcatalina.base="D:\tomcat" -Dcatalina.home="D:\tomcat" -Djava.io.tmpdir="D:\tomcat\temp" org.apache.catalina.startup.Bootstrap

 

 

/** 5、-D参数,args参数                                              

===============================================================================

*/                               

public class Test {
	public static void main(String[] args) {
		//eclipse中:args在Program arguments,-D在VM arguments
		if(args.length >= 2){
			System.out.println(args[0]);
			System.out.println(args[1]);
		}
		System.out.println("args......");
		System.out.println("-DmyConf="+System.getProperty("myConf"));;
	}
}

 

        D:\work\javacmd>java -DmyConf="conf/myConf.xml" Test wnj,ok good well 

        wnj,ok                                                               

        good                                                                 

        args......                                                           

        -DmyConf=conf/myConf.xml   

分享到:
评论

相关推荐

    使用Java编写脚本来将PDF转换为图像,Java的PDF处理库,Apache PDFBox

    1、导航到包含Java文件的目录,并执行以下命令来编译Java文件: javac PDFToImageConverter.java 2、执行以下命令来运行生成的类文件,并提供PDF文件的路径和输出文件夹的路径作为命令行参数: java ...

    3、 定义一个包含10个整数的数组,求该数组中的最大值、最小值、平均值与总和、并从小到大排序。

    请在DOS命令窗口里编译运行该程序 dos下相关命令 编译:javac 文件名.java 运行:java 文件名 此处填写数字(每个数字要用空格隔开)

    南邮java编程基础1~9章完整ppt

    《Java程序设计实用教程》 (第5版) 第01章 Java概述 第02章 Java语言基础 第03章 类的封装、继承和...E:\myjava>javac Hello.java 运行 E:\myjava>java Hello E:\myjava>java Hello > Hello.txt 命令行参数 E:\my

    Java复习大纲面试题.doc

    1.编译java程序使用什么命令?运行java使用什么命令? javac *.java java 类名 2.什么是JDK,什么是JRE,JDK与JRE有什么区别? JDK:Java Development Toolkit Java开发工具包 JRE:Java Runtime Enviorment Java运行时...

    RC6-BLOCK-CIPHER:用JAVA编程语言实现RC6块密码算法

    保存代码更改的命令: javac -d ./ src / Main.java src / rc6.java 执行加密的命令: java Main -e文本密钥enc 执行解密的命令: java Main -d enc key输出 从HEX,DEC到ASCII的很好的转换器: : 您可以阅读...

    完全免费的Java/jsp开发编辑工具FirstJava2

    你还将学会直接用javac命令来编译代码,java运行代码方法,ANT方式编译和运行代码, 创建自己的更高效的Build.xml文件,实现DIY自已的工程, Eclipse和Jbuild编译和运行代码方式,和这差不多,把他们隐藏起来了. 请...

    PhoebeSzkeleton:softlab4 骨架

    菲比 ... 翻译:在根目录shift+右键,在这里打开一个命令窗口,然后:javac -d bin src / Phoebe /*. 运行:在根目录打开命令窗口,然后: cd bin java Phoebe.GameManager 启动参数:不需要鸭嘴

    POIMultilineReport:这对于从带有deviders(.csv)的文件中创建Excell(.xls)文件可能很有用。

    您可以在文本设置文件中控制报告参数,其格式类似于Windows系统中的.ini文件。 ru: 该项目可以帮助您从带分隔符的文本文件中创建报告。 该项目使用了POI库(HSSF)的一部分。 您可以使用文本设置文件控制格式的...

    java高效学习之路-过来人经验

    javac: Java编译器 jar: Java打包工具 javadoc: Java文档生成器 这些命令行必须要非常非常熟悉,对于每个参数都要很精通才行。对于这些命令的学习,JDK Documentation上有详细的文档。 二、JDK ...

    decision-tree:使用信息增益启发式和方差杂质启发式的决策树实现

    决策树 使用信息增益启发式和方差杂质启发式的决策树实现。 下载数据集1和2。... 测试参数:3 4 \ data_sets1 \ training_set.csv \ data_sets1 \ validation_set.csv \ data_sets1 \ test_set.csv是

    java-tftp-client:一个简单的 Java TFTP 客户端。 RIT研究生“计算机网络”课程项目

    javac * . java 运行包含主要方法的 TFTPClient.java。 java TFTPClient . java TFTP 客户端使用说明。 可用命令: 命令 参数 描述 连接 网址 远程 tftp 服务器的 URL(例如,端口 69 上的 Glados.cs.rit.edu) ...

    Stream-Ciphers:A51 流密码的实现

    使用以下命令编译: javac -d ./bin ./src/*.java 使用以下命令(和适当的输入参数)运行程序: java -classpath ./bin A51.A51 运行可执行文件 导航到 runnable/ 目录。 输入以下命令以运行 .jar 文件(使用

    JAVA--达内培训笔记

    编译命令 javac xxxx.java 源文件的名字,源文件中的一个类会对应编译生成一个.class文件 运行命令 java xxxx 类的名字 --- 启动虚拟机 6、环境变量 JAVA_HOME = /opt/jdk1.5.06 JDK 安装路径 --- JDK = JRE ...

    Pascal_Compiler_Using_Java

    要求:- Java JDK 1.5 及更高版本。 1)请下载邮件所附的zip文件-CompilerConstruction.zip。 2) zip 文件内有一个名为 Compiler 的文件夹。 复制驱动器中的文件夹编译器。 3)编译器文件夹由以下文件组成: a)...

    AIC的Java课程1-6章

     使用javac, java, appletviewer等命令编译和运行application和applet。 第2章 面向过程(变量和控制结构) 4课时  掌握变量的内存概念,8种基本类型,字面值和赋值。  正确使用各种Java...

    疯狂JAVA讲义

    第1章 Java概述 1 1.1 Java语言的发展简史 2 1.2 Java的竞争对手及各自优势 4 1.2.1 C#简介和优势 4 1.2.2 Ruby简介和优势 4 1.2.3 Python的简介和优势 5 1.3 Java程序运行机制 5 1.3.1 高级语言的运行机制 6...

    JAVA编译器,适合新手,更时候老手

    学了这么久的JAVA,感觉最棘手的就是,好不容易写完了一篇JAVA程序,还要输入各种各样的文件路径、命令符、参数等等,才能调试,而且一旦JAVA程序错误要修改时还得重新输入一遍,很浪费时间。本程序使用的都是黑窗口...

    FirstJava2完全教材

    你还将学会直接用javac命令来编译代码,java运行代码方法,ANT方式编译和运行代码, 创建自己的更高效的Build.xml文件,实现DIY自已的工程, Eclipse和Jbuild编译和运行代码方式,和这差不多,把他们隐藏起来了. 请输入...

    myokoym-readable-code-workshop-java:20150306 敏捷学院举办的实用可读代码课程实现库(Java)

    实用的可读代码 配方管理程序 ...用javac命令编译java文件,然后用java命令执行。 $ javac -d bin/ src/net/myokoym/recipe/ * .java $ java -cp bin/ net.myokoym.recipe.Runner data/recipe-data

    深入理解_Java_虚拟机 JVM_高级特性与最佳实践

    前 言 致 谢 第一部分 走近Java 第1章 走近Java / 2 1.1 概述 / 2 1.2 Java技术体系 / 3 1.3 Java发展史 / 5 1.4 展望Java技术的未来 / 9 1.4.1 模块化 / 9 1.4.2 混合语言 / 9 1.4.3 多核并行 / 11 ...

Global site tag (gtag.js) - Google Analytics