Netbeans如何在Java中设置命令行参数

问题描述:

我想在Windows 7 64位的Netbeans 7.1 Java项目中设置命令行参数。Netbeans如何在Java中设置命令行参数

Netbeans没有通过我给它的参数。

我去ProjectPropertiesRun→在“参数”旁边输入参数,但参数不传递给程序。我如何通过它们?

+0

请显示您的主类。您是使用NetBeans创建的build.xml还是您自己的build.xml? – Paul 2012-02-06 23:15:36

+0

您确定您正在编辑运行该项目时使用的运行配置吗?确保在工具栏的下拉列表中选择正确的配置 – 2012-02-06 23:19:26

+0

如果您希望它为单个文件工作,请在其他类MainProgram.main(new String [] {“arg0”,“arg1 '});' – Sorter 2013-11-29 06:15:01

我猜你正在使用Run | Run File(或shift-F6)而不是Run | Run Main Project运行该文件。 NetBeans 7.1帮助文件(F1是你的朋友!)声明参数参数:

添加参数以在应用程序执行期间传递给主类。 请注意,参数不能传递给单个文件。

我验证了这个用了一小段代码:

public class Junk 
{ 
    public static void main(String[] args) 
    { 
     for (String s : args) 
      System.out.println("arg -> " + s); 
    } 
} 

我设置运行 - >参数来x y z。当我自己运行文件时,我没有输出。当我运行该项目时,输出结果如下:

arg -> x 
arg -> y 
arg -> z 
+0

我们现在可以将命令行参数传递给单个Java文件,现在使用NetBeans IDE 8.0的社区贡献插件https://github.com/tusharvjoshi/nbrunwithargs – 2014-03-22 02:13:58

+0

哦,是的,这个插件是为Ant仅基于Java的项目。我将修改它以在Maven项目中不显示NPE。这个插件需要Maven项目的附加功能,该插件对于拉取请求以及社区提供的此功能提供的任何帮助都是开放的。 – 2014-11-29 02:01:41

+0

如果我有机会,我会看看让它与Gradle项目一起工作的原因,尽管Gradle本身需要一个插件,所以不确定这是否可能。 – Paul 2014-11-29 16:45:55

步骤(1):创建可以接收参数作为命令行参数的java代码。步骤(2):在输出windown底部的NetBeans(使用7.3)中,单击黄色按钮(用不同参数重新运行)。这将打开一个新窗口(运行Ant目标窗口)。

步骤(3): 如果你需要传递的说法是“testArgument”,那么这里该窗口传递参数为application.args = testArgument

这会给输出遵循相同的输出窗口:

第一个参数是:testArgument

+1

如何添加多个参数 – Anup 2016-02-09 09:39:43

对于使用NetBeans 8.x中Maven项目:

  1. 点击运行>>设置项目配置>>通过自定义的main()
  2. 集名称/值对
  3. 选择操作
  4. 选择运行文件包含的参数。
  5. 点击OK

一个实例名称/值对可能类似于:

javax.persistence.jdbc.password=PASSWORD 

运行项目:

  1. 开放和重点,包括main(...)的Java类。
  2. F6运行该程序。

命令行参数应该出现在运行窗口中。

请注意,要通过程序获取价值表,请使用System.getProperty()

测试文件运行项目等方式来运行应用程序都可以定义参数的其他行为。重复上述步骤来完成这项任务。

+0

如果设置项目配置变灰了怎么办? Grails项目。 – user2782001 2017-01-02 01:34:59

+0

从'System.getProperty()'获得的环境变量与“命令行参数”不同。如果你需要提供'main(String [] args)'中的数组''所看到的参数,那么就需要编辑Maven变量'exec.args'“Leif Gruenwoldt”的答案显示了一种方法去做。 – Enwired 2017-02-02 00:40:05

如果您正在使用的MyEclipse,并希望前添加ARGS运行该程序,然后执行以下操作: 1.0)运行 - >运行配置 2.1),点击右侧的面板 2.2)的“参数”添加ARGS中在“程序参数”框中用空格分隔

在NetBeans IDE 8.0中,您可以使用社区提供的插件https://github.com/tusharvjoshi/nbrunwithargs,这将允许您在运行项目或运行单个文件命令时传递参数。

传递参数运行项目的命令要么你必须设置在项目属性运行面板的参数,或者使用可用的新命令安装它说与参数

运行通过命令行参数插件后一个具有main方法的Java文件,只需右键单击该方法并选择Run with Arguments命令,即可使用此插件

UPDATE(2014年3月24日)此插件现在可在NetBeans插件门户中使用,这意味着它可以从插件对话框从社区贡献的插件中显示的可用插件中,在NetBeans IDE 8.0中

Run with Arguments plugin as shown in Plugin dialog box

+0

不适用于我..它说找不到主类 – wmfairuz 2014-09-14 18:36:47

+0

不适用于Maven项目 - 请参阅此[bug报告](https://github.com/tusharvjoshi/nbrunwithargs/issues/3) – 2014-11-27 14:52:17

+1

哦,是的,该插件仅为基于Ant的Java项目创建。我将修改它以在Maven项目中不显示NPE。这个插件需要Maven项目的附加功能,该插件可用于拉取请求以及社区提供的任何关于此功能的帮助 – 2014-11-29 02:02:38

如果它是一个Maven项目则NetBeans是运行使用EXEC-Maven的插件所以你需要给你的选择追加到在运行Maven对话框中找到现有exec.args财产您的应用程序。通过按黄色双箭头图标,可以从输出窗口访问该对话框。

enter image description here

+0

这是我找到的用于NetBeans Maven项目的最简单的方法!对话框打开时,“记住”部分和其他选项不会显示给我。我必须在对话框变得可见之前调整对话框的大小。即使在我使用“记住'foo'”之后,我也不知道如何重新运行该配置。我不知道它被“记住”在哪里。 – Enwired 2017-02-02 00:46:27

import java.io.*; 
class Main 
{ 
public static void main(String args[]) throws IOException 
{ 
    int n1,n2,n3,l; 
    n1=Integer.parseInt(args[0]); 
    n2=Integer.parseInt(args[1]); 
    n3=Integer.parseInt(args[2]); 

    if(n1>n2) 
    { 
     l=n1; 
    } 
    else 
    { 
     l=n2; 
    } 

    if(l<n3) 
    { 
     System.out.println("largest no is "+n3); 
    } 
    else 
    { 
     System.out.println("largest no is "+l); 
    } 

}} 

考虑上述方案,在这个方案我想通过3页没有的从命令行,这样做。

第1步:右键点击杯碟图标,日子会把你看到这个窗口 1

步骤2:点击属性

步骤3:单击运行_>参数_>类型三不例如。 然后单击确定。 Plz在两个参数之间添加空格。请看这里 2

步骤4:使用F6运行程序。

将参数传递给运行项目命令要么必须在项目属性中设置参数运行面板