如何动态地将命令行参数传递给main方法

妈妈:

我将主类作为命令行参数传递给启动VM

现在我需要将命令行参数传递给该主类

有什么办法吗?

这就是我做的方式

    VirtualMachineManager manager = Bootstrap.virtualMachineManager();
    LaunchingConnector connector = manager.defaultConnector();
    Map arguments = connector.defaultArguments();
    ((Connector.Argument)arguments.get("options")).setValue(userVMArgs);
    ((Connector.Argument)arguments.get("main")).setValue(cmdLine);

这里的userVMargs是我的主类的类路径,也是该类的类路径,该类路径用于调用主类内部的类方法

和cmdLine拥有我的主类以及该类及其功能,我使用eclipse作为IDE来开发我的项目

Manikandan Sigamani:

如果要通过发送参数来启动VM,则应发送VM参数而不是程序参数。

程序参数是传递给您的应用程序的参数,可通过main方法的“ args”字符串数组参数进行访问。VM参数是诸如传递给JavaSW解释器的系统属性之类的参数。上面的Debug配置基本上等效于:

java -DsysProp1=sp1 -DsysProp2=sp2 test.ArgsTest pro1 pro2 pro3

VM参数位于对Java解释程序(即'java')的调用之后,在Java类之前。程序参数放在Java类之后。

考虑一个程序ArgsTest.java:

package test;

import java.io.IOException;

    public class ArgsTest {

        public static void main(String[] args) throws IOException {

            System.out.println("Program Arguments:");
            for (String arg : args) {
                System.out.println("\t" + arg);
            }

            System.out.println("System Properties from VM Arguments");
            String sysProp1 = "sysProp1";
            System.out.println("\tName:" + sysProp1 + ", Value:" + System.getProperty(sysProp1));
            String sysProp2 = "sysProp2";
            System.out.println("\tName:" + sysProp2 + ", Value:" + System.getProperty(sysProp2));

        }
    }

如果输入为

java -DsysProp1=sp1 -DsysProp2=sp2 test.ArgsTest pro1 pro2 pro3 

在命令行中,在项目bin文件夹中将显示以下结果:

Program Arguments:
  pro1
  pro2
  pro3
System Properties from VM Arguments
  Name:sysProp1, Value:sp1
  Name:sysProp2, Value:sp2

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Python

将命令行参数传递给uwsgi脚本

来自分类Java

将命令行参数传递给可运行的JAR

来自分类Java

传递给Java main()的命令行参数中的引号

来自分类Dev

如何将命令行参数传递给gnuplot?

来自分类Dev

将命令行参数传递给运行任务

来自分类Dev

如何将命令行参数传递给使用open命令运行的程序?

来自分类Dev

将命令行参数传递给Spark-shell

来自分类Dev

使用Ansible将命令行参数传递给Docker

来自分类Dev

将命令行参数传递给Flutter应用

来自分类Dev

如何将命令行参数传递给GHCi

来自分类Dev

将数组作为命令行参数传递给脚本

来自分类Dev

将命令行参数传递给python脚本

来自分类Dev

将命令行参数传递给Groovy脚本

来自分类Dev

如何动态地将参数传递给方差分析?

来自分类Dev

如何将命令行参数传递给Deno?

来自分类Dev

将命令行参数传递给AWS Fargate容器

来自分类Dev

将命令行参数传递给Presto Query

来自分类Dev

如何将命令行参数传递给sed?

来自分类Dev

将命令行参数传递给gawk脚本

来自分类Dev

如何将XML文件内容作为命令行参数传递给Java命令?

来自分类Dev

将命令行参数传递给Python

来自分类Dev

使用YIIC Shell将参数传递给命令行

来自分类Dev

Shell脚本:如何将脚本的命令行参数传递给它调用的命令?

来自分类Dev

动态地将参数传递给onclick函数

来自分类Dev

将命令行参数传递给 sql (Postgres)

来自分类Dev

如何将超过 10 个命令行参数传递给 jmeter 命令行运行?

来自分类Dev

如何动态地将参数传递给 docker run 命令

来自分类Dev

我如何动态地将值传递给组件

来自分类Dev

TestNG 将命令行参数从 java main 方法传递给 testng.xml

Related 相关文章

热门标签

归档