Community
Participate
Working Groups
I'm running into a NullPointerException when using buckminster.lastModified in my Ant script. I can reproduce it with the following setup: 1. a generic project called test.bucky, with the following buckminster.cspec: <?xml version="1.0" encoding="UTF-8"?> <cs:cspec xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0" name="test.bucky" componentType="buckminster" version="1.0.0"> <cs:actions> <cs:public name="test.buckminster.lastModified" actor="ant"> <cs:actorProperties> <cs:property key="buildFile" value="test.xml"/> <cs:property key="targets" value="run"/> </cs:actorProperties> </cs:public> </cs:actions> </cs:cspec> 2. test.xml: <project default="run"> <target name="run"> <buckminster.lastTimestamp property="ts" readerType="svn" repositoryLocation="http://svn.apache.org/repos/asf/subversion/trunk/README" dateFormat="yyyyMMddHHmm" /> <echo>last modified: ${ts}</echo> </target> </project> 3. run the action, get: [start test.bucky:buckminster$1.0.0#test.buckminster.lastModified] org.eclipse.core.runtime.CoreException: /Users/peter/workspace/test.bucky/test.xml:9: java.lang.NullPointerException /Users/peter/workspace/test.bucky/test.xml:9: java.lang.NullPointerException: java.lang.NullPointerException When run from cmd line, the full stack looks something like this: [java] ERROR: org.eclipse.core.runtime.CoreException: /Users/peter/workspace/test.bucky/test.xml:9: java.lang.NullPointerException [java] org.eclipse.core.runtime.CoreException: /Users/peter/workspace/test.bucky/test.xml:9: java.lang.NullPointerException [java] at org.eclipse.buckminster.ant.AntRunner.handleInvocationTargetException(AntRunner.java:167) [java] at org.eclipse.buckminster.ant.AntRunner.run(AntRunner.java:322) [java] at org.eclipse.buckminster.ant.actor.AntActor.internalPerform(AntActor.java:252) [java] at org.eclipse.buckminster.core.actor.AbstractActor.perform(AbstractActor.java:186) [java] at org.eclipse.buckminster.core.internal.actor.PerformManager$DirectActionInvocation.execute(PerformManager.java:143) [java] at org.eclipse.buckminster.core.internal.actor.PerformManager.internalPerform(PerformManager.java:454) [java] at org.eclipse.buckminster.core.internal.actor.PerformManager.perform(PerformManager.java:293) [java] at org.eclipse.buckminster.core.internal.actor.PerformManager.perform(PerformManager.java:305) [java] at org.eclipse.buckminster.core.commands.Perform.internalRun(Perform.java:108) [java] at org.eclipse.buckminster.core.commands.WorkspaceCommand.run(WorkspaceCommand.java:91) [java] at org.eclipse.buckminster.cmdline.AbstractCommand.basicRun(AbstractCommand.java:194) [java] at org.eclipse.buckminster.cmdline.Headless.run(Headless.java:317) [java] at org.eclipse.buckminster.cmdline.Headless.run(Headless.java:136) [java] at org.eclipse.buckminster.cmdline.Headless.start(Headless.java:156) [java] at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) [java] at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) [java] at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) [java] at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369) [java] at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [java] at java.lang.reflect.Method.invoke(Method.java:597) [java] at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619) [java] at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574) [java] at org.eclipse.equinox.launcher.Main.run(Main.java:1407) [java] at org.eclipse.equinox.launcher.Main.main(Main.java:1383) [java] Caused by: /Users/peter/workspace/test.bucky/test.xml:9: java.lang.NullPointerException [java] at org.eclipse.buckminster.ant.taskdefs.LastTimestamp.execute(LastTimestamp.java:63) [java] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [java] at java.lang.reflect.Method.invoke(Method.java:597) [java] at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) [java] at org.apache.tools.ant.Task.perform(Task.java:348) [java] at org.apache.tools.ant.Target.execute(Target.java:357) [java] at org.apache.tools.ant.Target.performTasks(Target.java:385) [java] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337) [java] at org.apache.tools.ant.Project.executeTarget(Project.java:1306) [java] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) [java] at org.eclipse.ant.internal.core.ant.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32) [java] at org.apache.tools.ant.Project.executeTargets(Project.java:1189) [java] at org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:662) [java] at org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:495) [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [java] at java.lang.reflect.Method.invoke(Method.java:597) [java] at org.eclipse.buckminster.ant.AntRunner.run(AntRunner.java:318) [java] ... 25 more [java] Caused by: java.lang.NullPointerException [java] at org.eclipse.buckminster.core.common.model.ExpandingProperties.putAll(ExpandingProperties.java:375) [java] at org.eclipse.buckminster.core.RMContext.<init>(RMContext.java:247) [java] at org.eclipse.buckminster.core.RMContext.<init>(RMContext.java:242) [java] at org.eclipse.buckminster.subversion.GenericReaderType.getSession(GenericReaderType.java:147) [java] at org.eclipse.buckminster.subversion.GenericReaderType.getLastModification(GenericReaderType.java:101) [java] at org.eclipse.buckminster.ant.taskdefs.LastTimestamp.execute(LastTimestamp.java:57) [java] ... 46 more [java] org.eclipse.core.runtime.CoreException: /Users/peter/workspace/test.bucky/test.xml:9: java.lang.NullPointerException [java] at org.eclipse.buckminster.ant.AntRunner.handleInvocationTargetException(AntRunner.java:167) [java] at org.eclipse.buckminster.ant.AntRunner.run(AntRunner.java:322) [java] at org.eclipse.buckminster.ant.actor.AntActor.internalPerform(AntActor.java:252) [java] at org.eclipse.buckminster.core.actor.AbstractActor.perform(AbstractActor.java:186) [java] at org.eclipse.buckminster.core.internal.actor.PerformManager$DirectActionInvocation.execute(PerformManager.java:143) [java] at org.eclipse.buckminster.core.internal.actor.PerformManager.internalPerform(PerformManager.java:454) [java] at org.eclipse.buckminster.core.internal.actor.PerformManager.perform(PerformManager.java:293) [java] at org.eclipse.buckminster.core.internal.actor.PerformManager.perform(PerformManager.java:305) [java] at org.eclipse.buckminster.core.commands.Perform.internalRun(Perform.java:108) [java] at org.eclipse.buckminster.core.commands.WorkspaceCommand.run(WorkspaceCommand.java:91) [java] at org.eclipse.buckminster.cmdline.AbstractCommand.basicRun(AbstractCommand.java:194) [java] at org.eclipse.buckminster.cmdline.Headless.run(Headless.java:317) [java] at org.eclipse.buckminster.cmdline.Headless.run(Headless.java:136) [java] at org.eclipse.buckminster.cmdline.Headless.start(Headless.java:156) [java] at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) [java] at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) [java] at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) [java] at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369) [java] at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [java] at java.lang.reflect.Method.invoke(Method.java:597) [java] at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619) [java] at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574) [java] at org.eclipse.equinox.launcher.Main.run(Main.java:1407) [java] at org.eclipse.equinox.launcher.Main.main(Main.java:1383) [java] Caused by: /Users/peter/workspace/test.bucky/test.xml:9: java.lang.NullPointerException [java] at org.eclipse.buckminster.ant.taskdefs.LastTimestamp.execute(LastTimestamp.java:63) [java] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [java] at java.lang.reflect.Method.invoke(Method.java:597) [java] at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) [java] at org.apache.tools.ant.Task.perform(Task.java:348) [java] at org.apache.tools.ant.Target.execute(Target.java:357) [java] at org.apache.tools.ant.Target.performTasks(Target.java:385) [java] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337) [java] at org.apache.tools.ant.Project.executeTarget(Project.java:1306) [java] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) [java] at org.eclipse.ant.internal.core.ant.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32) [java] at org.apache.tools.ant.Project.executeTargets(Project.java:1189) [java] at org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:662) [java] at org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:495) [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [java] at java.lang.reflect.Method.invoke(Method.java:597) [java] at org.eclipse.buckminster.ant.AntRunner.run(AntRunner.java:318) [java] ... 25 more [java] Caused by: java.lang.NullPointerException [java] at org.eclipse.buckminster.core.common.model.ExpandingProperties.putAll(ExpandingProperties.java:375) [java] at org.eclipse.buckminster.core.RMContext.<init>(RMContext.java:247) [java] at org.eclipse.buckminster.core.RMContext.<init>(RMContext.java:242) [java] at org.eclipse.buckminster.subversion.GenericReaderType.getSession(GenericReaderType.java:147) [java] at org.eclipse.buckminster.subversion.GenericReaderType.getLastModification(GenericReaderType.java:101) [java] at org.eclipse.buckminster.ant.taskdefs.LastTimestamp.execute(LastTimestamp.java:57) [java] ... 46 more [java] /Users/peter/workspace/test.bucky/helper.xml:9: java.lang.NullPointerException [java] Caused by: /Users/peter/workspace/test.bucky/test.xml:9: java.lang.NullPointerException [java] at org.eclipse.buckminster.ant.taskdefs.LastTimestamp.execute(LastTimestamp.java:63) [java] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [java] at java.lang.reflect.Method.invoke(Method.java:597) [java] at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) [java] at org.apache.tools.ant.Task.perform(Task.java:348) [java] at org.apache.tools.ant.Target.execute(Target.java:357) [java] at org.apache.tools.ant.Target.performTasks(Target.java:385) [java] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337) [java] at org.apache.tools.ant.Project.executeTarget(Project.java:1306) [java] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) [java] at org.eclipse.ant.internal.core.ant.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32) [java] at org.apache.tools.ant.Project.executeTargets(Project.java:1189) [java] at org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:662) [java] at org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:495) [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [java] at java.lang.reflect.Method.invoke(Method.java:597) [java] at org.eclipse.buckminster.ant.AntRunner.run(AntRunner.java:318) [java] at org.eclipse.buckminster.ant.actor.AntActor.internalPerform(AntActor.java:252) [java] at org.eclipse.buckminster.core.actor.AbstractActor.perform(AbstractActor.java:186) [java] at org.eclipse.buckminster.core.internal.actor.PerformManager$DirectActionInvocation.execute(PerformManager.java:143) [java] at org.eclipse.buckminster.core.internal.actor.PerformManager.internalPerform(PerformManager.java:454) [java] at org.eclipse.buckminster.core.internal.actor.PerformManager.perform(PerformManager.java:293) [java] at org.eclipse.buckminster.core.internal.actor.PerformManager.perform(PerformManager.java:305) [java] at org.eclipse.buckminster.core.commands.Perform.internalRun(Perform.java:108) [java] at org.eclipse.buckminster.core.commands.WorkspaceCommand.run(WorkspaceCommand.java:91) [java] at org.eclipse.buckminster.cmdline.AbstractCommand.basicRun(AbstractCommand.java:194) [java] at org.eclipse.buckminster.cmdline.Headless.run(Headless.java:317) [java] at org.eclipse.buckminster.cmdline.Headless.run(Headless.java:136) [java] at org.eclipse.buckminster.cmdline.Headless.start(Headless.java:156) [java] at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) [java] at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) [java] at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) [java] at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369) [java] at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [java] at java.lang.reflect.Method.invoke(Method.java:597) [java] at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619) [java] at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574) [java] at org.eclipse.equinox.launcher.Main.run(Main.java:1407) [java] at org.eclipse.equinox.launcher.Main.main(Main.java:1383) [java] Caused by: java.lang.NullPointerException [java] at org.eclipse.buckminster.core.common.model.ExpandingProperties.putAll(ExpandingProperties.java:375) [java] at org.eclipse.buckminster.core.RMContext.<init>(RMContext.java:247) [java] at org.eclipse.buckminster.core.RMContext.<init>(RMContext.java:242) [java] at org.eclipse.buckminster.subversion.GenericReaderType.getSession(GenericReaderType.java:147) [java] at org.eclipse.buckminster.subversion.GenericReaderType.getLastModification(GenericReaderType.java:101) [java] at org.eclipse.buckminster.ant.taskdefs.LastTimestamp.execute(LastTimestamp.java:57) [java] ... 46 more [java] --- Nested Exception --- [java] java.lang.NullPointerException [java] at org.eclipse.buckminster.core.common.model.ExpandingProperties.putAll(ExpandingProperties.java:375) [java] at org.eclipse.buckminster.core.RMContext.<init>(RMContext.java:247) [java] at org.eclipse.buckminster.core.RMContext.<init>(RMContext.java:242) [java] at org.eclipse.buckminster.subversion.GenericReaderType.getSession(GenericReaderType.java:147) [java] at org.eclipse.buckminster.subversion.GenericReaderType.getLastModification(GenericReaderType.java:101) [java] at org.eclipse.buckminster.ant.taskdefs.LastTimestamp.execute(LastTimestamp.java:57) [java] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [java] at java.lang.reflect.Method.invoke(Method.java:597) [java] at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) [java] at org.apache.tools.ant.Task.perform(Task.java:348) [java] at org.apache.tools.ant.Target.execute(Target.java:357) [java] at org.apache.tools.ant.Target.performTasks(Target.java:385) [java] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337) [java] at org.apache.tools.ant.Project.executeTarget(Project.java:1306) [java] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) [java] at org.eclipse.ant.internal.core.ant.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32) [java] at org.apache.tools.ant.Project.executeTargets(Project.java:1189) [java] at org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:662) [java] at org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:495) [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [java] at java.lang.reflect.Method.invoke(Method.java:597) [java] at org.eclipse.buckminster.ant.AntRunner.run(AntRunner.java:318) [java] at org.eclipse.buckminster.ant.actor.AntActor.internalPerform(AntActor.java:252) [java] at org.eclipse.buckminster.core.actor.AbstractActor.perform(AbstractActor.java:186) [java] at org.eclipse.buckminster.core.internal.actor.PerformManager$DirectActionInvocation.execute(PerformManager.java:143) [java] at org.eclipse.buckminster.core.internal.actor.PerformManager.internalPerform(PerformManager.java:454) [java] at org.eclipse.buckminster.core.internal.actor.PerformManager.perform(PerformManager.java:293) [java] at org.eclipse.buckminster.core.internal.actor.PerformManager.perform(PerformManager.java:305) [java] at org.eclipse.buckminster.core.commands.Perform.internalRun(Perform.java:108) [java] at org.eclipse.buckminster.core.commands.WorkspaceCommand.run(WorkspaceCommand.java:91) [java] at org.eclipse.buckminster.cmdline.AbstractCommand.basicRun(AbstractCommand.java:194) [java] at org.eclipse.buckminster.cmdline.Headless.run(Headless.java:317) [java] at org.eclipse.buckminster.cmdline.Headless.run(Headless.java:136) [java] at org.eclipse.buckminster.cmdline.Headless.start(Headless.java:156) [java] at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) [java] at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) [java] at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) [java] at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369) [java] at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [java] at java.lang.reflect.Method.invoke(Method.java:597) [java] at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619) [java] at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574) [java] at org.eclipse.equinox.launcher.Main.run(Main.java:1407) [java] at org.eclipse.equinox.launcher.Main.main(Main.java:1383)
Fix checked in to helios-maintenance branch, rev 11474.
Verified, thanks!