gpt4 book ai didi

java - 使用 bash 文件时如何从 java 中的控制台获取参数?

转载 作者:行者123 更新时间:2023-11-29 07:28:01 24 4
gpt4 key购买 nike

我有一个使用 bash 文件启动的 java 项目:

#!/usr/bin/env bash

java -classpath logger/bin:banking/bin:testframework/bin test.RunTest

我在我的终端(在 ubuntu 中)启动我的 bash:

firefrost@firefrost-PC:~/ProjetPOO3A$ bash test.sh banking.Account

在我的 main 中,我尝试获取如下参数:

public class RunTest {

public static void main(String[] args) {

System.out.println(args.length);
for(int i = 0; i < args.length; i++)
{
...

问题是 args.length 应该为 1 时却为 0,因为我在控制台中传递了参数“banking.Account”。

如果我将参数放在 bash 文件中:

#!/usr/bin/env bash

java -classpath logger/bin:banking/bin:testframework/bin test.RunTest banking.Account

我的主要识别参数和 System.out.println 输出 1。

为什么不考虑控制台中的参数?

最佳答案

Java代码没有问题。您的参数不会传播到 shell 脚本中的 java 命令。

#!/usr/bin/env bash
java -classpath logger/bin:banking/bin:testframework/bin test.RunTest "$@"

$@ 变量包含传递给 shell 脚本的所有参数。

关于java - 使用 bash 文件时如何从 java 中的控制台获取参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47499202/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com