The task retrieves a stack trace from a reference ID and writes the contents of the stack trace to a property. This task can be used in conjunction with the AntContrib tryCatch task to print out the stack from the exception that was encountered.
The following table describes the task specific attributes for the task:
| Task Specific Attributes | ||
| Attribute | Description | Required |
| property | Name of the Ant property in which to return the stack trace. | Yes |
| refid | The reference ID for the exception. | Yes |
Log the stack trace from an exception:
<target name="test" description="test">
<trycatch reference="exception">
<try>
<ant antfile="notthere.xml"/>
</try>
<catch>
<xt:getStackTrace refid="exception" property="stackTrace"/>
<echo message="${stackTrace}"/>
</catch>
</trycatch>
</target>
Log:
[echo] The following error occurred while executing this line:
[echo] Error reading project file /Users/djreilly/workspaces/RTC_Client/$djr/notthere.xml: /Users/djreilly/workspaces/RTC_Client/$djr/notthere.xml
[echo] at org.apache.tools.ant.ProjectHelper.addLocationToBuildException(ProjectHelper.java:582)
[echo] at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:395)
[echo] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:299)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[echo] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[echo] at java.base/java.lang.reflect.Method.invoke(Method.java:566)
[echo] at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:99)
[echo] at org.apache.tools.ant.Task.perform(Task.java:350)
[echo] at java.base/java.util.Vector.forEach(Vector.java:1394)
[echo] at org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:67)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[echo] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[echo] at java.base/java.lang.reflect.Method.invoke(Method.java:566)
[echo] at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:99)
[echo] at org.apache.tools.ant.Task.perform(Task.java:350)
[echo] at net.sf.antcontrib.logic.TryCatchTask.execute(TryCatchTask.java:207)
[echo] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:299)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[echo] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[echo] at java.base/java.lang.reflect.Method.invoke(Method.java:566)
[echo] at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:99)
[echo] at org.apache.tools.ant.Task.perform(Task.java:350)
[echo] at org.apache.tools.ant.Target.execute(Target.java:449)
[echo] at org.apache.tools.ant.Target.performTasks(Target.java:470)
[echo] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1401)
[echo] at org.apache.tools.ant.Project.executeTarget(Project.java:1374)
[echo] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
[echo] at org.eclipse.ant.internal.core.ant.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:34)
[echo] at org.apache.tools.ant.Project.executeTargets(Project.java:1264)
[echo] at org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:712)
[echo] at org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:532)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[echo] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[echo] at java.base/java.lang.reflect.Method.invoke(Method.java:566)
[echo] at org.eclipse.ant.core.AntRunner.run(AntRunner.java:374)
[echo] at org.eclipse.ant.internal.launching.launchConfigurations.AntLaunchDelegate.lambda$0(AntLaunchDelegate.java:272)
[echo] at java.base/java.lang.Thread.run(Thread.java:834)
[echo] Caused by: Error reading project file /Users/djreilly/workspaces/RTC_Client/$djr/notthere.xml: /Users/djreilly/workspaces/RTC_Client/$djr/notthere.xml
[echo] at org.apache.tools.ant.helper.ProjectHelper2.parse(ProjectHelper2.java:307)
[echo] at org.apache.tools.ant.helper.ProjectHelper2.parse(ProjectHelper2.java:182)
[echo] at org.apache.tools.ant.ProjectHelper.configureProject(ProjectHelper.java:104)
[echo] at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:393)
[echo] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:299)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[echo] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[echo] at java.base/java.lang.reflect.Method.invoke(Method.java:566)
[echo] at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:99)
[echo] at org.apache.tools.ant.Task.perform(Task.java:350)
[echo] at java.base/java.util.Vector.forEach(Vector.java:1394)
[echo] at org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:67)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[echo] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[echo] at java.base/java.lang.reflect.Method.invoke(Method.java:566)
[echo] at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:99)
[echo] at org.apache.tools.ant.Task.perform(Task.java:350)
[echo] at net.sf.antcontrib.logic.TryCatchTask.execute(TryCatchTask.java:207)
[echo] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:299)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[echo] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[echo] at java.base/java.lang.reflect.Method.invoke(Method.java:566)
[echo] at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:99)
[echo] at org.apache.tools.ant.Task.perform(Task.java:350)
[echo] at org.apache.tools.ant.Target.execute(Target.java:449)
[echo] at org.apache.tools.ant.Target.performTasks(Target.java:470)
[echo] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1401)
[echo] at org.apache.tools.ant.Project.executeTarget(Project.java:1374)
[echo] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
[echo] at org.eclipse.ant.internal.core.ant.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:34)
[echo] at org.apache.tools.ant.Project.executeTargets(Project.java:1264)
[echo] at org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:712)
[echo] at org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:532)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[echo] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[echo] at java.base/java.lang.reflect.Method.invoke(Method.java:566)
[echo] at org.eclipse.ant.core.AntRunner.run(AntRunner.java:374)
[echo] at org.eclipse.ant.internal.launching.launchConfigurations.AntLaunchDelegate.lambda$0(AntLaunchDelegate.java:272)
[echo] at java.base/java.lang.Thread.run(Thread.java:834)
[echo] Caused by: /Users/djreilly/workspaces/RTC_Client/$djr/notthere.xml
[echo] at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:92)
[echo] at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111)
[echo] at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:116)
[echo] at java.base/sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:219)
[echo] at java.base/java.nio.file.Files.newByteChannel(Files.java:371)
[echo] at java.base/java.nio.file.Files.newByteChannel(Files.java:422)
[echo] at java.base/java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:420)
[echo] at java.base/java.nio.file.Files.newInputStream(Files.java:156)
[echo] at org.apache.tools.ant.helper.ProjectHelper2.parse(ProjectHelper2.java:252)
[echo] at org.apache.tools.ant.helper.ProjectHelper2.parse(ProjectHelper2.java:182)
[echo] at org.apache.tools.ant.ProjectHelper.configureProject(ProjectHelper.java:104)
[echo] at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:393)
[echo] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:299)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[echo] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[echo] at java.base/java.lang.reflect.Method.invoke(Method.java:566)
[echo] at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:99)
[echo] at org.apache.tools.ant.Task.perform(Task.java:350)
[echo] at java.base/java.util.Vector.forEach(Vector.java:1394)
[echo] at org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:67)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[echo] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[echo] at java.base/java.lang.reflect.Method.invoke(Method.java:566)
[echo] at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:99)
[echo] at org.apache.tools.ant.Task.perform(Task.java:350)
[echo] at net.sf.antcontrib.logic.TryCatchTask.execute(TryCatchTask.java:207)
[echo] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:299)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[echo] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[echo] at java.base/java.lang.reflect.Method.invoke(Method.java:566)
[echo] at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:99)
[echo] at org.apache.tools.ant.Task.perform(Task.java:350)
[echo] at org.apache.tools.ant.Target.execute(Target.java:449)
[echo] at org.apache.tools.ant.Target.performTasks(Target.java:470)
[echo] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1401)
[echo] at org.apache.tools.ant.Project.executeTarget(Project.java:1374)
[echo] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
[echo] at org.eclipse.ant.internal.core.ant.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:34)
[echo] at org.apache.tools.ant.Project.executeTargets(Project.java:1264)
[echo] at org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:712)
[echo] at org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:532)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[echo] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[echo] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[echo] at java.base/java.lang.reflect.Method.invoke(Method.java:566)
[echo] at org.eclipse.ant.core.AntRunner.run(AntRunner.java:374)
[echo] at org.eclipse.ant.internal.launching.launchConfigurations.AntLaunchDelegate.lambda$0(AntLaunchDelegate.java:272)
[echo] at java.base/java.lang.Thread.run(Thread.java:834)