80,348
社区成员
发帖
与我相关
我的任务
分享
import groovy.json.JsonSlurper
//apply plugin: 'application'
configurations {
buildDependencies
}
dependencies {
buildDependencies "com.google.code.gson:gson:2.3.1"
//implementation fileTree(dir: 'libs', include: ['*.class'])
}
def cleanCache(){
println("cleanCache start");
def jsonFile = file('./2.txt')
jsonFile.delete()
delete("./bin")
}
task cpConfigRF{
doLast{
//cleanCache()
copy {
from "D:\\WorkSpace\\AndroidProject\\test_pd\\app\\build\\generated\\source\\buildConfig\\debug\\com\\test\\pd\\BuildConfig.java";
println("copyConfigR");
into "./bin/com/test/pd"
}
}
doLast{
copy {
from "D:\\WorkSpace\\AndroidProject\\test_pd\\app\\src\\main\\java\\com\\test\\pd\\constant\\ServiceConstant.java";
println("copyConfigR 22");
into "./bin/com/test/pd/constant"
}
}
doLast{
copy {
from "D:\\WorkSpace\\AndroidProject\\test_pd\\gradleUtils\\checkAppInfo";
println("copyConfigR 33");
into "./bin/com/test/pd"
}
}
}
task compilesingle(type:JavaCompile) {
dependsOn cpConfigRF
doLast{
println("compilesingle");
source = './bin'
include ("com/test/pd")
classpath =files(project.configurations.buildDependencies )
destinationDir = file('./bin')
}
}
task execlass {
dependsOn compilesingle
doLast{
javaexec {
println("execlass");
classpath = files('./bin', project.configurations.buildDependencies)
main = 'com.test.pd.PackCheckApp'
}
}
}
task finiskTask(){
dependsOn execlass
doLast{
overFinish()
}
}
def overFinish(){
println("overFinish");
String reactVersion
def jsonFile = file('./2.txt')
def json = new JsonSlurper().parseText(jsonFile.text)
println "getReactNativeVersion = " + json[0]['age']
if(json[0]['age']==0){
//cleanCache()
//System.exit(0)
}
}
this.afterEvaluate {
tasks.matching {
// 以process开头以ReleaseJavaRes或DebugJavaRes结尾的task
it.name.equals("compileDebugSources") && it.project.name.equals("app")
}.each { task ->
//task.dependsOn(cpConfigRF,cpSing,compilesingle,execlass) // 任务依赖:执行task之前需要执行dependsOn指定的任务
//2,3,1,4
task.dependsOn(finiskTask)
//task.dependsOn(cpSing,compilesingle,cpConfigRF,execlass)
//task.dependsOn(execlass,compilesingle,cpSing,cpConfigRF)
//task.dependsOn(execlass)
}
}