$project.getPlugins().apply("ruby") $project.setConfig { |config| config.setEntry("com/example/script/primary.rb") config.setPackageName("com.example.script.rb") config.setLogo("logo.png") } $project.getTasks().add("taskName1") { |task| task.setNecessary(false) task.getActions().add("actionName") { |action| action.onPerform { $console.log("taskName.#{action.getName()} onPerform") # 这里报错, 因为 setNecessary(false) 所以 taskName2 还是会执行 1 / 0 } } $console.log("isNecessary", task.isNecessary()) } $project.getTasks().add("taskName2") { |task| task.dependsOn("taskName1") task.getActions().add("actionName") { |action| action.onPerform { $console.log("taskName.#{action.getName()} onPerform") # 这里报错, 所以 taskName3 不会执行, 默认 isNecessary() 为 true 1 / 0 } } $console.log("isNecessary", task.isNecessary()) } $project.getTasks().add("taskName3") { |task| task.dependsOn("taskName2") task.getActions().add("actionName") { |action| action.onPerform { # 这里不会执行 $console.log("taskName.#{action.getName()} onPerform") } } $console.log("isNecessary", task.isNecessary()) }