Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env groovy
- @Grapes([
- @Grab(group='org.jvnet.hudson', module='xstream', version='1.4.7-jenkins-1'),
- ])
- def a
- println 'xstream'
- com.thoughtworks.xstream.XStream s = new com.thoughtworks.xstream.XStream()
- println s
- def reg1 = s.converterRegistry
- println "using property: $reg1"
- com.thoughtworks.xstream.XStream.metaClass.methodMissing = { String name, def args ->
- println "missing $name"
- if (name=="getConverterRegistry") {
- return delegate.converterRegistry
- }
- }
- def reg2 = s.getConverterRegistry()
- println "using getter : $reg2"
- println "ok"
- com.thoughtworks.xstream.XStream@6c45ee6e
- using property: com.thoughtworks.xstream.XStream$2@2e8e8225
- missing getConverterRegistry
- using getter : com.thoughtworks.xstream.XStream$2@2e8e8225
- ok
- #!/usr/bin/env groovy
- import hudson.util.XStream2
- import com.thoughtworks.xstream.XStream
- @Grapes([
- @Grab(group='org.jvnet.hudson', module='xstream', version='1.4.7-jenkins-1'),
- @Grab(group='org.jenkins-ci.main', module='jenkins-core', version='1.642.3', transitive=false),
- ])
- def a
- XStream.metaClass.methodMissing = { String name, def args ->
- println "missing $name for XStream"
- if (name=="getConverterRegistry") {
- return delegate.converterRegistry
- }
- }
- def reg2 = new XStream().getConverterRegistry()
- println reg2
- XStream2.metaClass.methodMissing = { String name, def args ->
- println "missing $name for XStream2"
- if (name=="getConverterRegistry") {
- return delegate.converterRegistry
- }
- }
- println 'xstream2'
- XStream2 s2 = new XStream2() // internal call to this.getConverterRegistry()
- println "ok"
- missing getConverterRegistry for XStream
- com.thoughtworks.xstream.XStream$2@c2db68f
- xstream2
- Caught: java.lang.NoSuchMethodError: hudson.util.XStream2.getConverterRegistry()Lcom/thoughtworks/xstream/converters/ConverterRegistry;
- java.lang.NoSuchMethodError: hudson.util.XStream2.getConverterRegistry()Lcom/thoughtworks/xstream/converters/ConverterRegistry;
- at hudson.util.XStream2.wrapMapper(XStream2.java:188)
- at com.thoughtworks.xstream.XStream.buildMapper(XStream.java:610)
- at com.thoughtworks.xstream.XStream.<init>(XStream.java:568)
- at com.thoughtworks.xstream.XStream.<init>(XStream.java:496)
- at com.thoughtworks.xstream.XStream.<init>(XStream.java:465)
- at com.thoughtworks.xstream.XStream.<init>(XStream.java:411)
- at com.thoughtworks.xstream.XStream.<init>(XStream.java:350)
- at hudson.util.XStream2.<init>(XStream2.java:89)
- at TestXStream2.run(TestXStream2.groovy:33)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement