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

Jos*_*osé 53 java netbeans arguments

我试图在Windows 7 64位上的Netbeans 7.1 Java项目中设置命令行参数.

Netbeans没有通过我给它的论据.

我转到Project- > Properties- > Run- >并键入"Arguments"旁边的参数,但参数不会传递给程序.我怎么通过它们?

Pau*_*aul 51

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

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

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

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

我将Run - > Arguments设置为x y z.当我单独运行文件时,我没有输出.当我运行项目时,输出是:

arg -> x
arg -> y
arg -> z
Run Code Online (Sandbox Code Playgroud)


小智 23

  1. 创建可以作为命令行参数接收参数的Java代码.

    class TestCode{
        public static void main(String args[]){
            System.out.println("first argument is: "+args[0]);
        }
    }
    
    Run Code Online (Sandbox Code Playgroud)
  2. 不带参数运行程序(按F6).

  3. 在"输出"窗口的底部,单击双黄色箭头(或黄色按钮)以打开"运行"对话框.

  4. 如果你需要传递的参数是testArgument,那么在这个窗口中传递参数为application.args=testArgument.

这将在相同的输出窗口中给出如下输出:

first argument is: testArgument
Run Code Online (Sandbox Code Playgroud)

对于Maven,说明类似,但改为改变exec.args属性:

exec.args=-classpath %classpath package.ClassName PARAM1 PARAM2 PARAM3
Run Code Online (Sandbox Code Playgroud)

注意:对包含空格的字符串参数使用单引号.


Lei*_*ldt 12

如果它是Maven项目,那么Netbeans正在使用exec-maven-plugin运行您的应用程序,因此您需要将选项附加到Run Maven对话框中的现有exec.args属性中.可以通过按黄色双箭头图标从" 输出"窗口访问此对话框.

在此输入图像描述


小智 9

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

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

示例名称/值对可能类似于:

javax.persistence.jdbc.password=PASSWORD
Run Code Online (Sandbox Code Playgroud)

然后运行你的项目:

  1. 打开并关注包含的Java类main(...).
  2. F6运行程序.

命令行参数应出现在"运行"窗口中.

请注意,要使用该程序获取值表单,请使用System.getProperty().

测试文件,运行项目以及运行应用程序的其他方法的其他操作可以定义参数.对不同的操作重复上述步骤以完成此任务.


小智 5

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);
    }

}}
Run Code Online (Sandbox Code Playgroud)

考虑上面的程序,在这个程序中我想要从命令行传递3个没有,这样做.

第1步:右键单击Cup and Saucer图标,你会看到这个窗口 1

第2步:单击"属性"

第3步:单击Run _> Arguments _> type three no's eg.32 98 16然后单击"确定".Plz在两个参数之间添加空格.见这里 2

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