简体   繁体   English

如何从命令行将参数传递给Gradle

[英]How to pass arguments to gradle from commandline

I try to pass arguments from command line to gradle. 我尝试将参数从命令行传递到gradle。

My build.gradle is: 我的build.gradle是:

task execute(type:JavaExec) {
   main = mainClass
   classpath = sourceSets.main.output
}

When I do: 当我做:

gradle -PmainClass=Hello execute

I get this: 我得到这个:

FAILURE: Build failed with an exception.

* Where:
Build file '/home/example2/build.gradle' line: 7

* What went wrong:
A problem occurred evaluating root project 'example2'.
> Could not find property 'sourceSets' on task ':execute'.

My question is that what should I provide for main? 我的问题是我应该为main提供什么? name of any java file package? 任何Java文件包的名称? any specific path? 任何特定的路径? What should actually be sourceSet? 实际上,sourceSet应该是什么?

Your minimal build.gradle file should look like this: 您的最小build.gradle文件应如下所示:

apply plugin: 'java'

task execute(type:JavaExec) {
   main = mainClass
   classpath = sourceSets.main.output
}

And you need a java class located in src/main/java/Hello.java like this: 并且您需要一个位于src / main / java / Hello.java中的java类,如下所示:

public class Hello {

    public static void main(String[] a) {}

}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM