Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Intellij中使用带--args的Gradle bootRun_Gradle_Intellij Idea - Fatal编程技术网

如何在Intellij中使用带--args的Gradle bootRun

如何在Intellij中使用带--args的Gradle bootRun,gradle,intellij-idea,Gradle,Intellij Idea,Gradle 4.9将--args参数引入到bootRun,我可以从命令行轻松使用该参数,但如何从Intellij 2018中的运行/调试配置使用该参数 在Intellij中,我将Gradle build设置为在我的项目上运行bootRun任务,我在运行/调试配置屏幕中尝试了以下参数,但没有成功: --args'foo' --args='foo' --args=foo Intellij的输出: 9:18:56 AM: Executing task 'bootRun --args='foo''

Gradle 4.9将
--args
参数引入到
bootRun
,我可以从命令行轻松使用该参数,但如何从Intellij 2018中的运行/调试配置使用该参数

在Intellij中,我将Gradle build设置为在我的项目上运行
bootRun
任务,我在运行/调试配置屏幕中尝试了以下参数,但没有成功:

  • --args'foo'
  • --args='foo'
  • --args=foo
Intellij的输出:

9:18:56 AM: Executing task 'bootRun --args='foo''...

Unknown command-line option '--args'.
9:18:57 AM: Task execution finished 'bootRun --args='foo''.

.

也许您可以在IDEA的
运行/调试配置
中将args添加到
任务
中,作为
bootRun--args='foo'


我的任务是
run--args='-h'
,它对我有效

作为一种解决方法,您可以使用gradle属性

在intellij参数字段中添加
-Pargs=--myArg=value

然后在
build.gradle中添加

bootRun {
    if (project.hasProperty('args')) {
        args project.args.split(',')
    }
}

现在,可以在应用程序内部使用
应用程序参数来访问它们。

不幸的是,@Linsama的解决方法无法处理多个参数。例如,
run--args='--arg1--arg2'
将不起作用

对于多个参数,您必须在arguments字段中移动整个参数,并将Tasks字段留空

这将有助于:

任务:


参数:
run--args='--arg1--arg2'

目前这是不可能的。请关注YouTrack上的相关问题:您找到解决方法了吗?没有,我只是选择通过运行Spring Boot应用程序类而不是通过Gradle进行调试。这很有趣,但它确实有效(目前使用IDEA 2019.x)。我没想到会这样,但确实如此。我不知道你是怎么被否决的。:-)