java的-D命令行参数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java的-D命令行参数相关的知识,希望对你有一定的参考价值。
java -Dlog_path=$LOG -cp $CLASSPATH:/test.jar new
请问这里-Dlog_path=$LOG的作用是什么?另外,需要-D与后面的log_path连着写?这是语法?谢谢!
这种-DXXXX是java运行参数的语法
是什么语法呢?作用是什么呢?
这个$LOG是log的路径,那在这里的作用是什么呢?让程序知道log_path代表什么?
那能举个例子么?比如命令行用了-Dlog_path="D:/log",在java code中如何使用这个log_path?
作用是配置一些环境变量,具体有哪些参数,参数有什么效果,和你用的实际环境、项目架构都有关
对,让程序知道log_path代表什么,具体程序怎么用,那是程序的事了
System.getProperty(“propertyName”) 比如你的就是System.getProperty("log_path")就可以拿到了 参考技术A 默认情况下,javac在编译时会把类文件放到源文件所处的目录。javac指令还支持将编译好的类文件放到指定的目录中,这时需要使用-d参数:
javac –d 类文件的存放目录 Java源文件
存放目录要预先存在,否则出现编译错误。
例: Hello.java位于d:\Java\app\src,它也是当前路径;设classes为预先建好的在d:\Java\app路径下的目录,用下面的指令编译源文件:
javac –d ..\classes Hello.java
此时生成的类文件将被放在d:\Java\app\classes
路径中。 参考技术B java的main函数都具有String[] 参数。这个参数可以通过-d来传递。
log_path这个会被存放在System.getProperty()中,
Property 是继承 hashtable的。可以通过System.getProperty("log_path")取得。
使用Java命令行方式导入第三方jar包来运行Java程序的命令
1.首先使用命令行进入到a.java所在的文件夹:(比如我的在D:\\javaeeworkspace\\SharedPS_WS\\src\\com\\dyf\\main 这样一个路径下,)
d: 回车,
cd D:\\javaeeworkspace\\SharedPS_WS\\src\\com\\dyf\\main 回车,
2.使用javac命令运行a.java源文件,运行时需要使用到第三方jar包时,使用 –classpath参数来指定jar包所在路径:
比如我的cxf框架的jar包在 C:\\D\\Java\\cxf\\apache-cxf-3.1.14\\lib 路径下,运行javac命令时,使用
javac -classpath ".;C:\\D\\Java\\cxf\\apache-cxf-3.1.14\\lib\\*"Server.java 回车,
3.但是运行出class文件之后,需要退回到class文件所在的包外的路径下,使用java –classpath 的方式来运行class文件即可(class文件需要输入包名)。
上面说的如果不是很清楚,请看下面的真实案例。
如下,附上我的真实案例:
我已经使用eclipse 正确运行了Java文件,生成了class文件,使用命令行进入到class文件所在的包前一路径,如下图:
Class文件所在路径:
第三方jar包所在路径:
我在运行时,使用如下命令:
1.使用命令行进入D盘:
d: 回车
2.进行main函数所在Java文件的class文件所在包的前一路径下:
cd D:\\javaeeworkspace\\SharedPS_WS\\build\\classes
3.使用Java命令,java -classpath ".;C:\\D\\Java\\cxf\\apache-cxf-3.1.14\\lib\\*" com.dyf.main.Server 回车
注意:classpath中的 .; 不能少。
由于编者水平有限,文章中如有不妥之处或者有什么疑问,可直接在下面评论指出,不胜感激。
以上是关于java的-D命令行参数的主要内容,如果未能解决你的问题,请参考以下文章