2017-04-25 67 views
0

我有这个gradle这个命令行其完美的作品:问:如何在Gradle任务中转换此Gradle命令行?

/gradle app:testalldevicesproductionenv -Pandroid.testInstrumentationRunnerArguments.class=nameofclass 

我试图这样做,因为这:

task testClassAllDevices(type: Exec){ 
    commandline 'gradle', 'app:testalldevicesproductionenv', 
       '-Pandroid.testInstrumentationRunnerArguments.class=nameofclass' 
} 

,但它没有工作...

我也试过用args {}但他们也没有工作...

如何将命令行转换为gradle任务?

+0

是否有任何理由要从Gradle执行Gradle命令? –

+0

我有一些测试类在多个设备上运行,并且我想为我在特定环境中的每个测试类创建一个任务,现在我只能通过命令行执行此操作,而且我不想每次发送命令行我不想做这些测试 –

+0

啊,所以你想用'android.testInstrumentationRunnerArguments.class'项目属性的不同值执行多次相同的任务? –

回答

0

所以我把它理解为你想从通过命令行参数 -Pandroid.testInstrumentationRunnerArguments.class=nameofclass

您可以设置命令行参数通过的gradle的Android Studio设置在IDE中执行任务的gradle app:testalldevicesproductionenv。 设置 - >构建,执行,部署 - >编译器 有对命令行选项字段存在,你可以把 -Pandroid.testInstrumentationRunnerArguments.class=nameofclass

然后你就可以在摇篮任务,如正常执行任务。当然,每次构建或通过gradle时都会通过,但如果它不适用,我想它会被忽略。

+0

这真的很有趣,我根本不知道这一点。但不幸的是,这不是我正在寻找的... –