简体   繁体   中英

Gradle : How to define a task that depend on an ant target

Hi if i list all tasks with gradle testGradle tasks -- all I see all imported ant tasks, but when i try to create my task that depends on an ant task, I am getting "Could not determine the dependencies of task ':testGradle'.

the line that is a problem: task testGradle(dependsOn: 'init' ) - it clearly doesn't see ant init task.

What did I do wrong?

build.gradle

println "this will always runs  first"
task buildM << {
  println "Importing ..."
  ant.importBuild  'build.xml'
  println "Done importing"
}

task testGradle(dependsOn : init ) << {
  println tasks.getByPath('init').path
}

gradle tasks all

Other tasks

all compile - Compile main source tree java files

deploy - deploy WAR file
**init** - Prepare for running compiling artifacts
....

byWorld5 copyTestConfiguration - Copy unit test configurations deployLoggerProperties - Deploy logging.properties to tomcat execMoped importTasks install - Install application in Tomcat list - List Tomcat applications init - Prepare for running compiling artifacts reload - Reload application in Tomcat start - Start Tomcat application stop - Stop Tomcat application test - Run junit tests compile - Compile main source tree java files

init - Prepare for running compiling artifacts

> gradle -v

Gradle 1.1

Gradle build time: Tuesday, July 31, 2012 1:24:32 PM UTC Groovy: 1.8.6 Ant: Apache Ant(TM) version 1.8.4 compiled on May 22 2012 Ivy: 2.2.0 JVM: 1.6.0_24 (Sun Microsystems Inc. 20.0-b12) OS: Linux 2.6.32-220.23.1.el6.x86_64 amd64

>gradle -c

org.gradle.api.GradleScriptException: A problem occurred evaluating root project 'moped_gradle'. at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:54) at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl.apply(DefaultScriptPluginFactory.java:127) at org.gradle.configuration.BuildScriptProcessor.evaluate(BuildScriptProcessor.java:38) at org.gradle.configuration.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:43) at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:463) at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:75) at org.gradle.configuration.ProjectEvaluationConfigurer.execute(ProjectEvaluationConfigurer.java:23) at org.gradle.configuration.ProjectEvaluationConfigurer.execute(ProjectEvaluationConfigurer.java:21) at org.gradle.configuration.DefaultBuildConfigurer$1.execute(DefaultBuildConfigurer.java:38) at org.gradle.configuration.DefaultBuildConfigurer$1.execute(DefaultBuildConfigurer.java:35) at org.gradle.api. internal.project.AbstractProject.configure(AbstractProject.java:439) at org.gradle.api.internal.project.AbstractProject.allprojects(AbstractProject.java:434) at org.gradle.configuration.DefaultBuildConfigurer.configure(DefaultBuildConfigurer.java:35) at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:139) at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:110) at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:78) at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:38) at org.gradle.launcher.exec.InProcessGradleLauncherActionExecuter.execute(InProcessGradleLauncherActionExecuter.java:39) at org.gradle.launcher.exec.InProcessGradleLauncherActionExecuter.execute(InProcessGradleLauncherActionExecuter.java:25) at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:50) at org.gradle.launcher.cli.ActionAdapter.execute(ActionAdapter.java:30) at org.gradle .launcher.cli.ActionAdapter.execute(ActionAdapter.java:22) at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:200) at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:173) at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:169) at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:138) at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33) at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22) at org.gradle.launcher.Main.doAction(Main.java:48) at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45) at org.gradle.launcher.Main.main(Main.java:39) at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:50) at org.gradle.launcher.bootstrap.ProcessBootstrap.run(Pro cessBootstrap.java:32) at org.gradle.launcher.GradleMain.main(GradleMain.java:26) Caused by: groovy.lang.MissingPropertyException: Could not find property 'init' on root project 'moped_gradle'. at org.gradle.api.internal.AbstractDynamicObject.propertyMissingException(AbstractDynamicObject.java:43) at org.gradle.api.internal.AbstractDynamicObject.getProperty(AbstractDynamicObject.java:35) at org.gradle.api.internal.CompositeDynamicObject.getProperty(CompositeDynamicObject.java:60) at org.gradle.groovy.scripts.BasicScript.propertyMissing(BasicScript.java:70) at build_62g86rvs7k0vqsu3ssgdsrobsc.run(/home/natalik/MyInstalls/moped_gradle/build.gradle:14) at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:52) ... 33 more

The ant.importBuild statement must be called during configuration phase to work. I did it during execution.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

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