[ https://issues.apache.org/jira/browse/GROOVY-8875?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16690666#comment-16690666 ]
Pruteanu Dragos commented on GROOVY-8875: ----------------------------------------- Below a stack trace with Java 11 on Ubuntu. Is any other alternative to tell Groovy not to print NULL on null objects in templates (and just empty string) ? 07:38:03 BUG! exception in phase 'semantic analysis' in source unit 'Script1.groovy' null at org.codehaus.groovy.control.CompilationUnit.applyToSourceUnits(CompilationUnit.java:972) at org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:633) at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:582) at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:354) at groovy.lang.GroovyClassLoader.access$300(GroovyClassLoader.java:87) at groovy.lang.GroovyClassLoader$5.provide(GroovyClassLoader.java:323) at groovy.lang.GroovyClassLoader$5.provide(GroovyClassLoader.java:320) at org.codehaus.groovy.runtime.memoize.StampedCommonCache.compute(StampedCommonCache.java:162) at org.codehaus.groovy.runtime.memoize.StampedCommonCache.getAndPut(StampedCommonCache.java:153) at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:318) at groovy.lang.GroovyShell.parseClass(GroovyShell.java:547) at groovy.lang.GroovyShell.parse(GroovyShell.java:559) at groovy.lang.GroovyShell.evaluate(GroovyShell.java:443) at groovy.lang.GroovyShell.evaluate(GroovyShell.java:482) at groovy.lang.GroovyShell.evaluate(GroovyShell.java:453) at com.wisecoders.dbs.rdbms.sync.engine.diffs.SimpleStatement.toString(SimpleStatement.java:70) > NullObject.metaClass > -------------------- > > Key: GROOVY-8875 > URL: https://issues.apache.org/jira/browse/GROOVY-8875 > Project: Groovy > Issue Type: Bug > Reporter: Pruteanu Dragos > Priority: Major > Fix For: 3.x > > > Hi, > I execute this. The third shell.evaluate throws an exception: > {code} > final GroovyShell shell = new GroovyShell( binding, > FormsGroovyConfiguration.CONFIG ); > // THIS WILL FORCE NULL VARIABLES TO PRINT AS '' INSTEAD OF NULL > // > http://stackoverflow.com/questions/10517817/how-to-get-rid-of-null-when-concating-string-in-groovy > shell.evaluate("org.codehaus.groovy.runtime.NullObject.metaClass.toString = { > return '' }"); > {code} > And got the next exception. This used to work in Java 10 and before, it > crashes under Java 11. Could have something to do with java modules ? > {noformat} > Exception in thread "JavaFX Application Thread" BUG! exception in phase > 'semantic analysis' in source unit 'Script1.groovy' null > at > org.codehaus.groovy.control.CompilationUnit.applyToSourceUnits(CompilationUnit.java:970) > at > org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:633) > at > org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:582) > at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:324) > at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:294) > at groovy.lang.GroovyShell.parseClass(GroovyShell.java:558) > at groovy.lang.GroovyShell.parse(GroovyShell.java:570) > at groovy.lang.GroovyShell.evaluate(GroovyShell.java:454) > at groovy.lang.GroovyShell.evaluate(GroovyShell.java:493) > at groovy.lang.GroovyShell.evaluate(GroovyShell.java:464) > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)