thank you, it works !

--
Tomek

2009/10/14 Adam Murdoch <[email protected]>:
>
>
> Tomek Kaczanowski wrote:
>>
>> hi all,
>>
>> I try to run jdepend from Gradle - with no luck.
>>
>> I started with the simplest ant build.xml and tried to convert it to
>> build.gradle.
>>
>> build.xml works. It looks like this:
>> <?xml version="1.0"?>
>> <project name="MyProject" default="jdepend" basedir=".">
>>  <target name="jdepend">
>>    <jdepend outputfile="build/docs/jdepend-report.txt">
>>      <exclude name="java.*"/>
>>      <exclude name="javax.*"/>
>>      <classespath>
>>        <pathelement location="build"/>
>>      </classespath>
>>      <classpath location="build"/>
>>    </jdepend>
>>  </target>
>> </project>
>>
>>
>>
>>
>> equivalent (I hope so) build.gradle:
>> usePlugin('java')
>>
>> repositories {
>>    mavenCentral()
>> }
>>
>> configurations {
>>    jdependConf
>> }
>>
>> dependencies {
>>    jdependConf 'jdepend:jdepend:2.9.1', 'org.apache.ant:ant-jdepend:1.7.1'
>> }
>>
>> task jdepend << {
>>    println 'Running jdepend quality metrics tool'
>>    ant {
>>      taskdef(name:'jdepend',
>> classname:'org.apache.tools.ant.taskdefs.optional.jdepend.JDependTask',
>> classpath: configurations.jdependConf.asPath)
>> jdepend (outputfile: 'build/docs/jdepend-report.txt') {
>>        exclude {
>>                name: 'java.*'
>>        }
>>        exclude {
>>                name: 'javax.*'
>>        }
>>        classespath {
>>                pathelement {
>>                        location: 'build'
>>                }
>>        }
>>        classpath {
>>                location: 'build'
>>        }
>> }
>>
>>
>>    }
>> }
>>
>>
>
> Your mapping of the nested elements is not quite right. Attributes of an
> element need to be passed as arguments to the element method, rather than in
> the method closure:
>
> jdepend(outputfile: ...) {
>   exclude(name: 'java.*')
>   exclude(name: 'javax.*')
>   classpath { pathelement(location: 'build') }
>   classpath(location: 'build')  // though, these 2 classpath elements do the
> same thing
> }
>
>>
>> execution of "gradle jdepend" ends up like this:
>> :jdepend
>> Running jdepend quality metrics tool
>> Trying to override old definition of datatype jdepend
>>
>> FAILURE: Build failed with an exception.
>>
>> * Where:
>> Build file '/home/tomek/docs/gradle/cookbook/jdepend/build.gradle' line:
>> 19
>>
>> * What went wrong:
>> Execution failed for task ':jdepend'.
>> Cause: java.lang.NullPointerException
>>
>> * Try:
>> Run with -s or -d option to get more details. Run with -S option to
>> get the full (very verbose) stacktrace.
>>
>> BUILD FAILED
>>
>> Total time: 5.605 secs
>>
>>
>>
>>
>> full stack trace:
>> * Exception is:
>> org.gradle.api.GradleScriptException: Build file
>> '/home/tomek/docs/gradle/cookbook/jdepend/build.gradle' line: 19
>> Execution failed for task ':jdepend'.
>>        at
>> org.gradle.api.internal.AbstractTask.execute(AbstractTask.java:232)
>>        at
>> org.gradle.execution.DefaultTaskExecuter.executeTask(DefaultTaskExecuter.java:165)
>>        at
>> org.gradle.execution.DefaultTaskExecuter.doExecute(DefaultTaskExecuter.java:156)
>>        at
>> org.gradle.execution.DefaultTaskExecuter.execute(DefaultTaskExecuter.java:74)
>>        at
>> org.gradle.execution.TaskNameResolvingBuildExecuter.execute(TaskNameResolvingBuildExecuter.java:174)
>>        at
>> org.gradle.execution.DelegatingBuildExecuter.execute(DelegatingBuildExecuter.java:54)
>>        at org.gradle.GradleLauncher.doBuildStages(GradleLauncher.java:165)
>>        at org.gradle.GradleLauncher.doBuild(GradleLauncher.java:124)
>>        at org.gradle.GradleLauncher.run(GradleLauncher.java:95)
>>        at org.gradle.Main.execute(Main.java:100)
>>        at org.gradle.Main.main(Main.java:43)
>>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>        at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>        at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>        at java.lang.reflect.Method.invoke(Method.java:597)
>>        at org.gradle.BootstrapMain.main(BootstrapMain.java:50)
>> Caused by: org.apache.tools.ant.BuildException:
>> java.lang.NullPointerException
>>        at
>> org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:115)
>>        at org.apache.tools.ant.Task.perform(Task.java:348)
>>        at groovy.util.AntBuilder.nodeCompleted(AntBuilder.java:204)
>>        at
>> groovy.util.BuilderSupport.doInvokeMethod(BuilderSupport.java:147)
>>        at groovy.util.AntBuilder.doInvokeMethod(AntBuilder.java:154)
>>        at
>> org.gradle.api.internal.project.ant.BasicAntBuilder.doInvokeMethod(BasicAntBuilder.java:74)
>>        at groovy.util.BuilderSupport.invokeMethod(BuilderSupport.java:64)
>>        at
>> org.gradle.api.internal.project.DefaultAntBuilder.super$3$invokeMethod(DefaultAntBuilder.groovy)
>>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>        at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>        at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>        at java.lang.reflect.Method.invoke(Method.java:597)
>>        at
>> org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:86)
>>        at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234)
>>        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1049)
>>        at
>> org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuperN(ScriptBytecodeAdapter.java:127)
>>        at
>> org.gradle.api.internal.project.DefaultAntBuilder.invokeMethod(DefaultAntBuilder.groovy:37)
>>        at
>> org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeOnDelegationObjects(ClosureMetaClass.java:402)
>>        at
>> org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:348)
>>        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:880)
>>        at
>> org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66)
>>        at
>> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:44)
>>        at
>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:143)
>>        at
>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:155)
>>        at
>> build_gradle_39ec9bc40cbb11f9d93d0405e1a0d1a3$_run_closure4_closure5.doCall(/home/tomek/docs/gradle/cookbook/jdepend/build.gradle:19)
>>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>        at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>        at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>        at java.lang.reflect.Method.invoke(Method.java:597)
>>        at
>> org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:86)
>>        at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234)
>>        at
>> org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:272)
>>        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:880)
>>        at
>> org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66)
>>        at
>> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:44)
>>        at
>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:143)
>>        at
>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:151)
>>        at
>> build_gradle_39ec9bc40cbb11f9d93d0405e1a0d1a3$_run_closure4_closure5.doCall(/home/tomek/docs/gradle/cookbook/jdepend/build.gradle)
>>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>        at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>        at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>        at java.lang.reflect.Method.invoke(Method.java:597)
>>        at
>> org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:86)
>>        at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234)
>>        at
>> org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:272)
>>        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:880)
>>        at groovy.lang.Closure.call(Closure.java:279)
>>        at groovy.lang.Closure.call(Closure.java:274)
>>        at org.gradle.util.ConfigureUtil.configure(ConfigureUtil.java:42)
>>        at org.gradle.util.ConfigureUtil.configure(ConfigureUtil.java:33)
>>        at org.gradle.util.ConfigureUtil$configure.call(Unknown
>> Source)
>>        at
>> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:40)
>>        at
>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:117)
>>        at
>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:129)
>>        at
>> org.gradle.api.internal.project.DefaultProject.ant(DefaultProject.groovy:60)
>>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>        at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>        at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>        at java.lang.reflect.Method.invoke(Method.java:597)
>>        at
>> org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:86)
>>        at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234)
>>        at
>> org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:361)
>>        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:880)
>>        at
>> org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66)
>>        at
>> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:44)
>>        at
>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:143)
>>        at
>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:151)
>>        at
>> build_gradle_39ec9bc40cbb11f9d93d0405e1a0d1a3$_run_closure4.doCall(/home/tomek/docs/gradle/cookbook/jdepend/build.gradle:17)
>>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>        at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>        at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>        at java.lang.reflect.Method.invoke(Method.java:597)
>>        at
>> org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:86)
>>        at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234)
>>        at
>> org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:272)
>>        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:880)
>>        at
>> org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:39)
>>        at
>> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:40)
>>        at
>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:117)
>>        at
>> org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:125)
>>        at org.gradle.api.ClosureTaskAction.execute(DefaultTask.groovy:82)
>>        at org.gradle.api.ClosureTaskAction.execute(DefaultTask.groovy)
>>        at
>> org.gradle.api.internal.AbstractTask.doExecute(AbstractTask.java:257)
>>        at
>> org.gradle.api.internal.AbstractTask.execute(AbstractTask.java:222)
>>        ... 15 common frames omitted
>> Caused by: java.lang.NullPointerException
>>        at
>> org.apache.tools.ant.types.resources.FileResourceIterator.addFiles(FileResourceIterator.java:65)
>>        at
>> org.apache.tools.ant.types.resources.FileResourceIterator.<init>(FileResourceIterator.java:56)
>>        at
>> org.apache.tools.ant.types.Path$PathElement.iterator(Path.java:123)
>>        at
>> org.apache.tools.ant.types.resources.Union.getCollection(Union.java:105)
>>        at
>> org.apache.tools.ant.types.resources.Union.getCollection(Union.java:88)
>>        at
>> org.apache.tools.ant.types.resources.BaseResourceCollectionContainer.cacheCollection(BaseResourceCollectionContainer.java:244)
>>        at
>> org.apache.tools.ant.types.resources.BaseResourceCollectionContainer.iterator(BaseResourceCollectionContainer.java:120)
>>        at org.apache.tools.ant.types.Path.iterator(Path.java:687)
>>        at
>> org.apache.tools.ant.types.resources.Union.getCollection(Union.java:105)
>>        at org.apache.tools.ant.types.resources.Union.list(Union.java:67)
>>        at org.apache.tools.ant.types.Path.list(Path.java:356)
>>        at
>> org.apache.tools.ant.taskdefs.optional.jdepend.JDependTask.executeInVM(JDependTask.java:477)
>>        at
>> org.apache.tools.ant.taskdefs.optional.jdepend.JDependTask.execute(JDependTask.java:410)
>>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>        at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>        at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>        at java.lang.reflect.Method.invoke(Method.java:597)
>>        at
>> org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105)
>>        ... 98 common frames omitted
>>
>> BUILD FAILED
>>
>> Total time: 5.037 secs
>>
>>
>> Any hints ? I guess I'm doing something pretty silly...
>>
>> --
>> Tomek
>>
>> ---------------------------------------------------------------------
>> To unsubscribe from this list, please visit:
>>
>>    http://xircles.codehaus.org/manage_email
>>
>>
>>
>
> --
> Adam Murdoch
> Gradle Developer
> http://www.gradle.org
>
>
> ---------------------------------------------------------------------
> To unsubscribe from this list, please visit:
>
>   http://xircles.codehaus.org/manage_email
>
>
>

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to