Gradle任务不接受Java用户输入

Gradle任务不接受Java用户输入,java,gradle,Java,Gradle,我使用springboot创建了一个gradle项目MortgageCalculator。使用/gradlew build构建项目后,我有以下目录树: 。 ├── 建筑 │   ├── 班级 │   │   └── JAVA │   │   ├── 主要的 │   │   │   └── 通用域名格式 │   │   │   └── 田 │   │   │   └── 抵押计算器 │   │   │   ├─

我使用springboot创建了一个gradle项目
MortgageCalculator
。使用
/gradlew build
构建项目后,我有以下目录树:

。
├── 建筑
│   ├── 班级
│   │   └── JAVA
│   │       ├── 主要的
│   │       │   └── 通用域名格式
│   │       │       └── 田
│   │       │           └── 抵押计算器
│   │       │               ├── DemoApplication.class
│   │       │               └── 主类
│   │       └── 测验
│   │           └── 通用域名格式
│   │               └── 田
│   │                   └── 抵押计算器
│   │                       └── DemoApplicationTests.class
|   ...
| 
├── 格雷德尔先生
|
|
...
|
└── src
├── 主要的
│   ├── JAVA
│   │   └── 通用域名格式
│   │       └── 田
│   │           └── 抵押计算器
│   │               ├── DemoApplication.java
│   │               └── 主类
│   └── 资源
│       └── 应用程序属性
...

Main.java
的源代码是

package com.tian.MortgageCalculator;
导入java.util.Scanner;
公共班机{
公共静态void main(字符串[]args){
//初始化工具
扫描仪=新的扫描仪(System.in);
字节a=scanner.nextByte();
}
}

然后我在
build.gradle

task Main(type: JavaExec) {
        main = 'com.tian.MortgageCalculator.Main'
        classpath = sourceSets.main.runtimeClasspath
}

但是当我运行
/gradlew Main
时。我得到以下例外

线程“main”java.util.NoSuchElementException中的异常 位于java.base/java.util.Scanner.throwFor(Scanner.java:937) 位于java.base/java.util.Scanner.next(Scanner.java:1594) 位于java.base/java.util.Scanner.nextByte(Scanner.java:2002) 位于java.base/java.util.Scanner.nextByte(Scanner.java:1956) 位于com.tian.MortgageCalculator.Main.Main(Main.java:14)
我认为问题在于,以这种方式运行任务不允许用户在中输入系统,但我应该如何定义我的任务以允许它呢?

您可能正在寻找
JavaExec
任务类型。使用以下任务定义,设置对我有效(使用Gradle 6.8.2测试):


您可能正在寻找
JavaExec
任务类型的类型。使用以下任务定义,设置对我有效(使用Gradle 6.8.2测试):

task Main(type: JavaExec) {
    main = 'com.tian.MortgageCalculator.Main'
    classpath = sourceSets.main.runtimeClasspath
    standardInput = System.in
}