Thanks Adam and Rene for your help !. Adam,
I tried the exact example you gave me, and it worked as is; First it downloaded the dependencies from the maven repository: Download http://repo1.maven.org/maven2/org/apache/ant/ant-javamail/1.8.1/ant-javamail-1.8.1.po Download http://repo1.maven.org/maven2/org/apache/ant/ant-parent/1.8.1/ant-parent-1.8.1.pom Download http://repo1.maven.org/maven2/org/apache/ant/ant/1.8.1/ant-1.8.1.pom Download http://repo1.maven.org/maven2/org/apache/ant/ant-launcher/1.8.1/ant-launcher-1.8.1.po Download http://repo1.maven.org/maven2/javax/mail/mail/1.4/mail-1.4.pom Download http://repo1.maven.org/maven2/javax/activation/activation/1.1/activation-1.1.pom Download http://repo1.maven.org/maven2/org/apache/ant/ant-javamail/1.8.1/ant-javamail-1.8.1.ja Download http://repo1.maven.org/maven2/org/apache/ant/ant/1.8.1/ant-1.8.1.jar Download http://repo1.maven.org/maven2/org/apache/ant/ant-launcher/1.8.1/ant-launcher-1.8.1.ja Download http://repo1.maven.org/maven2/javax/mail/mail/1.4/mail-1.4.jar Download http://repo1.maven.org/maven2/javax/activation/activation/1.1/activation-1.1.jar and then correctly ran the ant.mail task. Great! That is a solution. I then tried a local repository, thankfully that worked also!! dependencies { mail 'org.apache.ant:ant-javamail', ':mail', ':activation' } thanks very much for both your help. I will have to do much reading now I have the time, in order to maintain the end script, and improve it. For example, on webpage: http://gradle.org/0.9.1/docs/javadoc/org/gradle/api/artifacts/dsl/DependencyHandler.html it shows the dependency notation: configurationName "group:name:version:classifier" Not sure what the group and classifier arguments are ..... except they seem to be very optional (as in, I didn't seem to need them). Is this maven concepts then that I lack? thanks again! Sean On 19 January 2011 13:19, Adam Murdoch <[email protected]> wrote: > > On 19/01/2011, at 1:17 PM, Adam Murdoch wrote: > > Optional ant tasks are still a bit awkward. You might do something like > this: > > Oh, and vote for http://jira.codehaus.org/browse/GRADLE-574 > > repositories { > mavenCentral() > } > configurations { > mail > } > dependencies { > mail 'org.apache.ant:ant-javamail:1.8.1' > } > task email { > doLast { > configurations.mail.each { > > org.apache.tools.ant.Project.class.classLoader.addURL(it.toURI().toURL()) > } > ant.mail(...) > } > } > The only important piece is this: > someClasspath.each { > > org.apache.tools.ant.Project.class.classLoader.addURL(it.toURI().toURL()) > } > > In the example above, I just happened to use a configuration to fetch the > jars from the maven central repository. You can build the classpath however > you like - it's just a set of File objects. > > On 19/01/2011, at 12:56 PM, Sean Van Buggenum wrote: > > Sure; > > Here below is both the run using the straight ant style setup that I > tested on my own ( doEMail ) > and the run using an adaption of what Rene showed me (doMail) > in that order. > > D:\dev>cd scripts > > D:\dev\scripts>gradle -s doEMail > do it then! > do it now! > :doEMail > in the do email task > [ant:email] Failed to send email: javax.mail.internet.MimeMessage > > FAILURE: Build failed with an exception. > > * Where: > Build file 'D:\dev\scripts\build.gradle' line: 103 > > * What went wrong: > Execution failed for task ':doEMail'. > Cause: java.lang.ClassNotFoundException: javax.mail.internet.MimeMessage > > * Try: > Run with -d option to get more details. Run with -S option to get the > full (very verbose) stacktrace. > > * Exception is: > org.gradle.api.tasks.LocationAwareTaskExecutionException: Build file > 'D:\dev\scripts\build.gradle' line: 103 > Execution failed for task ':doEMail'. > at > org.gradle.api.internal.tasks.DefaultTaskExecuter.executeActions(DefaultTaskExecuter.java:66) > at > org.gradle.api.internal.tasks.DefaultTaskExecuter.execute(DefaultTaskExecuter.java:43) > at > org.gradle.api.internal.project.taskfactory.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:32) > at > org.gradle.api.internal.project.taskfactory.ExecutionShortCircuitTaskExecuter.execute(ExecutionShortCircuitTaskExecuter.java:50) > at > org.gradle.api.internal.tasks.SkipTaskExecuter.doExecute(SkipTaskExecuter.java:57) > at > org.gradle.api.internal.tasks.SkipTaskExecuter.execute(SkipTaskExecuter.java:35) > at > org.gradle.api.internal.tasks.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:32) > at > org.gradle.api.internal.AbstractTask.execute(AbstractTask.java:231) > at > org.gradle.execution.DefaultTaskGraphExecuter.executeTask(DefaultTaskGraphExecuter.java:167) > at > org.gradle.execution.DefaultTaskGraphExecuter.doExecute(DefaultTaskGraphExecuter.java:160) > at > org.gradle.execution.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:78) > at > org.gradle.execution.TaskNameResolvingBuildExecuter.execute(TaskNameResolvingBuildExecuter.java:113) > at > org.gradle.execution.DelegatingBuildExecuter.execute(DelegatingBuildExecuter.java:54) > at > org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:153) > at > org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:107) > at > org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:75) > at org.gradle.launcher.RunBuildAction.execute(RunBuildAction.java:41) > at org.gradle.launcher.RunBuildAction.execute(RunBuildAction.java:27) > at > org.gradle.launcher.CommandLineActionFactory$WithLoggingAction.execute(CommandLineActionFactory.java:209) > at > org.gradle.launcher.CommandLineActionFactory$WithLoggingAction.execute(CommandLineActionFactory.java:193) > at org.gradle.launcher.Main.execute(Main.java:55) > at org.gradle.launcher.Main.main(Main.java:40) > at > org.gradle.launcher.ProcessBootstrap.runNoExit(ProcessBootstrap.java:46) > at org.gradle.launcher.ProcessBootstrap.run(ProcessBootstrap.java:28) > at org.gradle.launcher.GradleMain.main(GradleMain.java:24) > Caused by: : java.lang.ClassNotFoundException: > javax.mail.internet.MimeMessage > at > org.apache.tools.ant.taskdefs.email.EmailTask.execute(EmailTask.java:586) > at > org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) > at > org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) > at > org.gradle.api.internal.project.ant.BasicAntBuilder.nodeCompleted(BasicAntBuilder.java:71) > at > org.gradle.api.internal.project.ant.BasicAntBuilder.doInvokeMethod(BasicAntBuilder.java:86) > at > org.gradle.api.internal.project.DefaultAntBuilder.super$3$invokeMethod(DefaultAntBuilder.groovy) > at > org.gradle.api.internal.project.DefaultAntBuilder.invokeMethod(DefaultAntBuilder.groovy:37) > at > build_gradle_1467b47dd8b3e85829e88798cc56eeb0$_run_closure6.doCall(D:\dev\scripts\build.gradle:103) > at > org.gradle.api.internal.AbstractTask$ClosureTaskAction.execute(AbstractTask.java:445) > at > org.gradle.api.internal.AbstractTask$ClosureTaskAction.execute(AbstractTask.java:432) > at > org.gradle.api.internal.tasks.DefaultTaskExecuter.executeActions(DefaultTaskExecuter.java:58) > ... 24 more > Caused by: java.lang.ClassNotFoundException: javax.mail.internet.MimeMessage > at > org.apache.tools.ant.taskdefs.email.EmailTask.execute(EmailTask.java:452) > ... 34 more > > > BUILD FAILED > > Total time: 8.069 secs > > D:\dev\scripts>gradle -s doMail > do it then! > do it now! > :doMail > in the domail task > [ant:mail] Failed to send email: javax.mail.internet.MimeMessage > > FAILURE: Build failed with an exception. > > * Where: > Build file 'D:\dev\scripts\build.gradle' line: 76 > > * What went wrong: > Execution failed for task ':doMail'. > Cause: java.lang.ClassNotFoundException: javax.mail.internet.MimeMessage > > * Try: > Run with -d option to get more details. Run with -S option to get the > full (very verbose) stacktrace. > > * Exception is: > org.gradle.api.tasks.LocationAwareTaskExecutionException: Build file > 'D:\dev\scripts\build.gradle' line: 76 > Execution failed for task ':doMail'. > at > org.gradle.api.internal.tasks.DefaultTaskExecuter.executeActions(DefaultTaskExecuter.java:66) > at > org.gradle.api.internal.tasks.DefaultTaskExecuter.execute(DefaultTaskExecuter.java:43) > at > org.gradle.api.internal.project.taskfactory.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:32) > at > org.gradle.api.internal.project.taskfactory.ExecutionShortCircuitTaskExecuter.execute(ExecutionShortCircuitTaskExecuter.java:50) > at > org.gradle.api.internal.tasks.SkipTaskExecuter.doExecute(SkipTaskExecuter.java:57) > at > org.gradle.api.internal.tasks.SkipTaskExecuter.execute(SkipTaskExecuter.java:35) > at > org.gradle.api.internal.tasks.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:32) > at > org.gradle.api.internal.AbstractTask.execute(AbstractTask.java:231) > at > org.gradle.execution.DefaultTaskGraphExecuter.executeTask(DefaultTaskGraphExecuter.java:167) > at > org.gradle.execution.DefaultTaskGraphExecuter.doExecute(DefaultTaskGraphExecuter.java:160) > at > org.gradle.execution.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:78) > at > org.gradle.execution.TaskNameResolvingBuildExecuter.execute(TaskNameResolvingBuildExecuter.java:113) > at > org.gradle.execution.DelegatingBuildExecuter.execute(DelegatingBuildExecuter.java:54) > at > org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:153) > at > org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:107) > at > org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:75) > at org.gradle.launcher.RunBuildAction.execute(RunBuildAction.java:41) > at org.gradle.launcher.RunBuildAction.execute(RunBuildAction.java:27) > at > org.gradle.launcher.CommandLineActionFactory$WithLoggingAction.execute(CommandLineActionFactory.java:209) > at > org.gradle.launcher.CommandLineActionFactory$WithLoggingAction.execute(CommandLineActionFactory.java:193) > at org.gradle.launcher.Main.execute(Main.java:55) > at org.gradle.launcher.Main.main(Main.java:40) > at > org.gradle.launcher.ProcessBootstrap.runNoExit(ProcessBootstrap.java:46) > at org.gradle.launcher.ProcessBootstrap.run(ProcessBootstrap.java:28) > at org.gradle.launcher.GradleMain.main(GradleMain.java:24) > Caused by: : java.lang.ClassNotFoundException: > javax.mail.internet.MimeMessage > at > org.apache.tools.ant.taskdefs.email.EmailTask.execute(EmailTask.java:586) > at > org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) > at > org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) > at > org.gradle.api.internal.project.ant.BasicAntBuilder.nodeCompleted(BasicAntBuilder.java:71) > at > org.gradle.api.internal.project.ant.BasicAntBuilder.doInvokeMethod(BasicAntBuilder.java:86) > at > org.gradle.api.internal.project.DefaultAntBuilder.super$3$invokeMethod(DefaultAntBuilder.groovy) > at > org.gradle.api.internal.project.DefaultAntBuilder.invokeMethod(DefaultAntBuilder.groovy:37) > at > build_gradle_1467b47dd8b3e85829e88798cc56eeb0$_run_closure5_closure20.doCall(D:\dev\scripts\build.gradle:76) > at org.gradle.util.ConfigureUtil.configure(ConfigureUtil.java:61) > at org.gradle.util.ConfigureUtil.configure(ConfigureUtil.java:31) > at > org.gradle.api.internal.project.AbstractProject.ant(AbstractProject.java:877) > at > org.gradle.api.internal.BeanDynamicObject.invokeMethod(BeanDynamicObject.java:158) > at > org.gradle.api.internal.CompositeDynamicObject.invokeMethod(CompositeDynamicObject.java:93) > at > org.gradle.api.internal.project.DefaultProject_Decorated.invokeMethod(Unknown > Source) > at > org.gradle.groovy.scripts.BasicScript.methodMissing(BasicScript.groovy:68) > at > build_gradle_1467b47dd8b3e85829e88798cc56eeb0$_run_closure5.doCall(D:\dev\scripts\build.gradle:71) > at > org.gradle.api.internal.AbstractTask$ClosureTaskAction.execute(AbstractTask.java:445) > at > org.gradle.api.internal.AbstractTask$ClosureTaskAction.execute(AbstractTask.java:432) > at > org.gradle.api.internal.tasks.DefaultTaskExecuter.executeActions(DefaultTaskExecuter.java:58) > ... 24 more > Caused by: java.lang.ClassNotFoundException: javax.mail.internet.MimeMessage > at > org.apache.tools.ant.taskdefs.email.EmailTask.execute(EmailTask.java:452) > ... 42 more > > > BUILD FAILED > > Total time: 4.036 secs > > D:\dev\scripts> > > > > > > > On 19 January 2011 12:33, Adam Murdoch <[email protected]> wrote: > > On 19/01/2011, at 12:26 PM, Sean Van Buggenum wrote: > > Not really making much progress: > > the task I want to use is in the ant-1.8.1.jar file that is available > > in the lib folder of GRADLE_HOME. > > It is called 'EmailTask' and resides at: > > org.apache.tools.ant.taskdefs.email.EmailTask > > Its dependencies are found in the jar files I have: > > mail.jar > > activation.jar > > and maybe > > java-mail.jar, which comes with the ant installation. > > I still get the same exception no matter how I do this: > > java.lang.ClassNotFoundException. > > Execution failed for task ':doEMail'. > > Cause: java.lang.ClassNotFoundException: javax.mail.internet.MimeMessage > > Can you run with -s, and send in the stack trace for this exception? > > -- > > Adam Murdoch > > Gradle Developer > > http://www.gradle.org > > CTO, Gradle Inc. - Gradle Training, Support, Consulting > > http://www.gradle.biz > > > > --------------------------------------------------------------------- > To unsubscribe from this list, please visit: > > http://xircles.codehaus.org/manage_email > > > > > -- > Adam Murdoch > Gradle Developer > http://www.gradle.org > CTO, Gradle Inc. - Gradle Training, Support, Consulting > http://www.gradle.biz > > > > -- > Adam Murdoch > Gradle Developer > http://www.gradle.org > CTO, Gradle Inc. - Gradle Training, Support, Consulting > http://www.gradle.biz > > --------------------------------------------------------------------- To unsubscribe from this list, please visit: http://xircles.codehaus.org/manage_email
