Java 主要参数标识为主类
Posted
技术标签:
【中文标题】Java 主要参数标识为主类【英文标题】:Java main argument identified as main class 【发布时间】:2016-01-04 11:45:15 【问题描述】:我在运行带有参数的 Java 进程时遇到问题,作为来自另一个 Java 管理器进程的命令。假设我有一个主类 Main,我想将 0 作为参数传递(对于 javaw.exe,它只是参数之一)。为了说明,如果我在控制台中运行这样的东西,它可以工作:
javaw.exe -X... -D... -cp ... Main 0
这将使用参数 0 运行 Main。现在,要从我的管理器应用程序运行它,我使用以下行:
Process p = Runtime.getRuntime().exec(new string[]
"cmd.exe", "/c", "javaw.exe", "-X... -D... -cp ... Main", "0");
我在 err 中得到以下输出:
Error: Could not find or load main class 0
换句话说,JVM 将 0 识别为主类。 不推荐使用不同的 exec 重载选项(它是通用基础架构)。
【问题讨论】:
***.com/questions/7134486/… 【参考方案1】:好吧,您将整个“-X...-D...-cp ... Main”作为单个参数传递。相反,您应该:
Process p = Runtime.getRuntime().exec(new string[]
"cmd.exe", "/c", "javaw.exe", "-X...", "-D...", "-cp", "...", "Main", "0");
【讨论】:
对。不知道这很重要……谢谢。以上是关于Java 主要参数标识为主类的主要内容,如果未能解决你的问题,请参考以下文章
创建一个三角形类,成员变量三边,方法求周长,创建类主类A来测试它。
创建一个三角形类,成员变量三边,方法求周长,创建类主类A来测试它
创建一个三角形类,成员变量三边,方法求周长,创建类主类A来测试它。
创建一个Point类,有成员变量x,y,方法getX(),setX(),还有一个构造方 法初始化x和y。创建类主类A来测试它。