$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("taskName") { |task| task.getActions().add("actionName1") { |action| action.setNecessary(false) action.onPerform { $console.log("taskName." + action.getName() + " isNecessary=#{action.isNecessary()}") $console.log("taskName." + action.getName() + " onPerform") # 这里报错因为 setNecessary(false) 的关系, 剩下的 actionName2 还会被执行 1 / 0 } } task.getActions().add("actionName2") { |action| action.setNecessary(true) action.onPerform { # actionName1 执行错误但是 setNecessary(false), 所以下面代码会执行 $console.log("taskName." + action.getName() + " isNecessary=#{action.isNecessary()}") $console.log("taskName." + action.getName() + " onPerform") # 这里报错因为 setNecessary(true) 的关系, 剩下的 actionName3 不会被执行 1 / 0 } } task.getActions().add("actionName3") { |action| action.onPerform { # actionName2 执行错误并且 setNecessary(true), 所以下面代码不会执行 $console.log("taskName." + action.getName() + " onPerform") } } }