首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将星号作为命令行参数传递给Eclipse中的main

将星号作为命令行参数传递给Eclipse中的main
EN

Stack Overflow用户
提问于 2013-04-21 23:36:32
回答 2查看 2.4K关注 0票数 3

我正在处理Eclipse中的一个Java项目,现在我想将星号*作为命令行参数传递给main。我知道这是一个通配符,并且在每个shell中它都可以很好地工作,只需将它放在引号中,所以我输入java MyProgram "*"而不是java MyProgram *

在Eclipse中(运行Cofigurations ->参数),这两种方式都不起作用,即使使用引号,它也只列出目录中的所有文件。'*'中的单引号与a*a或其他东西的工作方式相同,这意味着单引号(或撇号)也将被传递到字符串中。

你有什么办法让*进入主网络吗?

EN

回答 2

Stack Overflow用户

发布于 2015-08-22 01:07:52

Eclipse将*扩展为属性名称列表。因此,程序实际上传递给(在我的系统上)一个args数组:.classpath,.project,.settings,.bin,.src,而不是*。

如果我把任何文本加上,比如"X",我就会得到"X*“。

双引号不起作用。用斜杠转义也不会。

从shell上看,它工作得很好,尽管在Windows上会有一个警告,说明您确实需要将它放在引号中。Windows将在程序获取引号之前将其去掉。

但是在Eclipse下,我找不到只允许传递*的解决方法。

票数 2
EN

Stack Overflow用户

发布于 2013-04-22 03:28:56

这是你自己程序中的一个编程错误。Eclipse将主要参数逐字传递给您的程序。您可以通过创建一个Java程序来轻松地检查这一点,该程序在main中只有这一行:

代码语言:javascript
复制
System.out.println(args[0]);

并将星号作为运行配置中该程序的唯一参数进行传递。如预期的那样打印单个星号字符。

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16132890

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档