program arguments和VM arguments的区别 eclispse
在用eclipseIDE编写java程序时,有时候运行时,会不自觉的跳到另外一个默认工程中去执行另外一个java文件。这是因为我们runconfiguration没有设置好。
这时设置这里的Project和Mainclass,再点击运行即可。
Program arguments和VM arguments:
如上图所示,Arguments下面有两个代码编辑区,Program arguments和VMarguments。这是干什么用的呢?让我们用一个例子来说明。
Program arguments中写:pro1pro2 pro3
VMarguments中写:-DsysProp1=sp1 -DsysProp2=sp2
然后写一个java文件
代码如下:
运行结果:
实际上program arguments中的值作为args[]的参数传入的,而VMArguments是设置的虚拟机的属性。
program arguments是要传给你的应用程序的,它通过主函数中的args来传值。VMarguments是系统的属性,要传给java虚拟机的。它与下面这条语句有相同的功能:
java -DsysProp1=sp1 -DsysProp2=sp2 test.ArgsTest pro1 pro2pro3
VM arguments 在java interpreter调用之后,但是在java class(即java ***)之后。Program arguments在java class 之后。