diff options
author | Yigit Boyar <yboyar@google.com> | 2015-06-24 22:11:03 -0700 |
---|---|---|
committer | Yigit Boyar <yboyar@google.com> | 2015-06-25 14:46:31 -0700 |
commit | c1560e6b00b398867da12fbdc5a1fcd1d50b801c (patch) | |
tree | 27521fb6aa8dc42bdc2a4e4fec92b3d68e5fb422 /gradlePlugin | |
parent | 2611838bffef5a009ca71e3e9e59a93f29b098ed (diff) | |
download | data-binding-c1560e6b00b398867da12fbdc5a1fcd1d50b801c.tar.gz |
Carry over location information from parser to annotation processor
This CL changes LayoutParser to use Antlr which provides us the location
information. This information is now serialized inside the bundle so
that we can read it in the annotation processor, enabling better error
logs with location information.
Bug:21953001
Change-Id: If9b5cf2f87598a609ddf77235decc17098a46a6b
Diffstat (limited to 'gradlePlugin')
-rw-r--r-- | gradlePlugin/src/main/java/android/databinding/tool/DataBinderPlugin.java | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gradlePlugin/src/main/java/android/databinding/tool/DataBinderPlugin.java b/gradlePlugin/src/main/java/android/databinding/tool/DataBinderPlugin.java index c400b985..b235b995 100644 --- a/gradlePlugin/src/main/java/android/databinding/tool/DataBinderPlugin.java +++ b/gradlePlugin/src/main/java/android/databinding/tool/DataBinderPlugin.java @@ -36,6 +36,7 @@ import com.android.builder.model.ApiVersion; import org.apache.commons.io.IOUtils; import org.apache.commons.lang3.StringUtils; +import org.apache.commons.lang3.exception.ExceptionUtils; import org.gradle.api.Action; import org.gradle.api.Plugin; import org.gradle.api.Project; @@ -284,7 +285,10 @@ public class DataBinderPlugin implements Plugin<Project> { try { task.writeLayoutXmls(); } catch (JAXBException e) { - logE(e, "cannot write layout xmls"); + // gradle sometimes fails to resolve JAXBException. + // We get stack trace manually to ensure we have the log + logE(e, "cannot write layout xmls %s", + ExceptionUtils.getStackTrace(e)); } } }); |