[jira] [Updated] (GROOVY-6282) groovyc ant task generates invalid stub (picks wrong constructor) and fails in Java 1.7 compilation
[ https://issues.apache.org/jira/browse/GROOVY-6282?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Eric Milles updated GROOVY-6282: Fix Version/s: 2.5.21 > groovyc ant task generates invalid stub (picks wrong constructor) and fails > in Java 1.7 compilation > --- > > Key: GROOVY-6282 > URL: https://issues.apache.org/jira/browse/GROOVY-6282 > Project: Groovy > Issue Type: Bug > Components: Stub generator / Joint compiler >Affects Versions: 2.1.6 >Reporter: Lari Hotari >Assignee: Eric Milles >Priority: Major > Fix For: 4.0.0-beta-1, 3.0.9, 2.5.21 > > > The current master branch of Grails won't compile with Java 1.7 . It compiles > ok with Java 1.6 . > The error message is: > {code} > [ant:groovyc] /tmp/groovy-generated-614097634888075990-java-sourc > [ant:groovyc] > e/org/codehaus/groovy/grails/cli/interactive/GrailsInteractiveCompletor.java:15: > error: unreported exception IOException; must b > [ant:groovyc] e caught or declared to be thrown > [ant:groovyc] super ((java.io.InputStream)null); > [ant:groovyc] ^ > {code} > Reproducing error: > {code} > git clone https://github.com/grails/grails-core.git > cd grails-core > git checkout 1239b8ed > ./gradlew clean compileGroovy > {code} > Generated stub with error: > {code} > package org.codehaus.groovy.grails.cli.interactive; > import java.lang.*; > import java.io.*; > import java.net.*; > import java.util.*; > import groovy.lang.*; > import groovy.util.*; > @groovy.transform.CompileStatic() public class GrailsInteractiveCompletor > extends jline.SimpleCompletor implements > groovy.lang.GroovyObject { > public GrailsInteractiveCompletor > (grails.util.BuildSettings settings, java.util.List > scriptResources) { > super ((java.io.InputStream)null); > } > public groovy.lang.MetaClass getMetaClass() { return > (groovy.lang.MetaClass)null;} > public void setMetaClass(groovy.lang.MetaClass mc) { } > public java.lang.Object invokeMethod(java.lang.String method, > java.lang.Object arguments) { return null;} > public java.lang.Object getProperty(java.lang.String property) { return > null;} > public void setProperty(java.lang.String property, java.lang.Object value) { > } > public grails.util.BuildSettings getSettings() { return > (grails.util.BuildSettings)null;} > public void setSettings(grails.util.BuildSettings value) { } > public java.util.Map getCompletorCache() { return (java.util.Map)null;} > public void setCompletorCache(java.util.Map value) { } > @java.lang.Override() public int complete(java.lang.String buffer, int > cursor, java.util.List clist) { return (int)0;} > public static java.lang.String[] getScriptNames(java.util.List > scriptResources) { return (java.lang.String[])null;} > } > {code} > However the stub is ok if I remove "groovyOptions.useAnt = true" and > "options.useAnt = true" from the build.gradle of Grails: > {code} > package org.codehaus.groovy.grails.cli.interactive; > import java.lang.*; > import java.io.*; > import java.net.*; > import java.util.*; > import groovy.lang.*; > import groovy.util.*; > @groovy.transform.CompileStatic() public class GrailsInteractiveCompletor > extends jline.SimpleCompletor implements > groovy.lang.GroovyObject { > public GrailsInteractiveCompletor > (grails.util.BuildSettings settings, java.util.List > scriptResources) { > super ((java.lang.String)null); > } > public groovy.lang.MetaClass getMetaClass() { return > (groovy.lang.MetaClass)null;} > public void setMetaClass(groovy.lang.MetaClass mc) { } > public java.lang.Object invokeMethod(java.lang.String method, > java.lang.Object arguments) { return null;} > public java.lang.Object getProperty(java.lang.String property) { return > null;} > public void setProperty(java.lang.String property, java.lang.Object value) { > } > public grails.util.BuildSettings getSettings() { return > (grails.util.BuildSettings)null;} > public void setSettings(grails.util.BuildSettings value) { } > public java.util.Map getCompletorCache() { return (java.util.Map)null;} > public void setCompletorCache(java.util.Map value) { } > @java.lang.Override() public int complete(java.lang.String buffer, int > cursor, java.util.List clist) { return (int)0;} > public static java.lang.String[] getScriptNames(java.util.List > scriptResources) { return (java.lang.String[])null;} > } > {code} > diff of generated stubs: > {code} > < super ((java.lang.String)null); > --- > > super ((java.io.InputStream)null); > {code} > Source code of GrailsInteractiveCompletor: > https://github.com/grails/grails-core/blob/1239b8edb606cca1c137285393a366898e18e196/grails-bootstrap/src/main/groovy/org/codehaus/groovy/grails/cli/interactive/GrailsInteractiveCompletor.groovy#L47 > however
[jira] [Updated] (GROOVY-6282) groovyc ant task generates invalid stub (picks wrong constructor) and fails in Java 1.7 compilation
[ https://issues.apache.org/jira/browse/GROOVY-6282?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Eric Milles updated GROOVY-6282: Fix Version/s: 3.0.9 > groovyc ant task generates invalid stub (picks wrong constructor) and fails > in Java 1.7 compilation > --- > > Key: GROOVY-6282 > URL: https://issues.apache.org/jira/browse/GROOVY-6282 > Project: Groovy > Issue Type: Bug > Components: Stub generator / Joint compiler >Affects Versions: 2.1.6 >Reporter: Lari Hotari >Assignee: Eric Milles >Priority: Major > Fix For: 4.0.0-beta-1, 3.0.9 > > > The current master branch of Grails won't compile with Java 1.7 . It compiles > ok with Java 1.6 . > The error message is: > {code} > [ant:groovyc] /tmp/groovy-generated-614097634888075990-java-sourc > [ant:groovyc] > e/org/codehaus/groovy/grails/cli/interactive/GrailsInteractiveCompletor.java:15: > error: unreported exception IOException; must b > [ant:groovyc] e caught or declared to be thrown > [ant:groovyc] super ((java.io.InputStream)null); > [ant:groovyc] ^ > {code} > Reproducing error: > {code} > git clone https://github.com/grails/grails-core.git > cd grails-core > git checkout 1239b8ed > ./gradlew clean compileGroovy > {code} > Generated stub with error: > {code} > package org.codehaus.groovy.grails.cli.interactive; > import java.lang.*; > import java.io.*; > import java.net.*; > import java.util.*; > import groovy.lang.*; > import groovy.util.*; > @groovy.transform.CompileStatic() public class GrailsInteractiveCompletor > extends jline.SimpleCompletor implements > groovy.lang.GroovyObject { > public GrailsInteractiveCompletor > (grails.util.BuildSettings settings, java.util.List > scriptResources) { > super ((java.io.InputStream)null); > } > public groovy.lang.MetaClass getMetaClass() { return > (groovy.lang.MetaClass)null;} > public void setMetaClass(groovy.lang.MetaClass mc) { } > public java.lang.Object invokeMethod(java.lang.String method, > java.lang.Object arguments) { return null;} > public java.lang.Object getProperty(java.lang.String property) { return > null;} > public void setProperty(java.lang.String property, java.lang.Object value) { > } > public grails.util.BuildSettings getSettings() { return > (grails.util.BuildSettings)null;} > public void setSettings(grails.util.BuildSettings value) { } > public java.util.Map getCompletorCache() { return (java.util.Map)null;} > public void setCompletorCache(java.util.Map value) { } > @java.lang.Override() public int complete(java.lang.String buffer, int > cursor, java.util.List clist) { return (int)0;} > public static java.lang.String[] getScriptNames(java.util.List > scriptResources) { return (java.lang.String[])null;} > } > {code} > However the stub is ok if I remove "groovyOptions.useAnt = true" and > "options.useAnt = true" from the build.gradle of Grails: > {code} > package org.codehaus.groovy.grails.cli.interactive; > import java.lang.*; > import java.io.*; > import java.net.*; > import java.util.*; > import groovy.lang.*; > import groovy.util.*; > @groovy.transform.CompileStatic() public class GrailsInteractiveCompletor > extends jline.SimpleCompletor implements > groovy.lang.GroovyObject { > public GrailsInteractiveCompletor > (grails.util.BuildSettings settings, java.util.List > scriptResources) { > super ((java.lang.String)null); > } > public groovy.lang.MetaClass getMetaClass() { return > (groovy.lang.MetaClass)null;} > public void setMetaClass(groovy.lang.MetaClass mc) { } > public java.lang.Object invokeMethod(java.lang.String method, > java.lang.Object arguments) { return null;} > public java.lang.Object getProperty(java.lang.String property) { return > null;} > public void setProperty(java.lang.String property, java.lang.Object value) { > } > public grails.util.BuildSettings getSettings() { return > (grails.util.BuildSettings)null;} > public void setSettings(grails.util.BuildSettings value) { } > public java.util.Map getCompletorCache() { return (java.util.Map)null;} > public void setCompletorCache(java.util.Map value) { } > @java.lang.Override() public int complete(java.lang.String buffer, int > cursor, java.util.List clist) { return (int)0;} > public static java.lang.String[] getScriptNames(java.util.List > scriptResources) { return (java.lang.String[])null;} > } > {code} > diff of generated stubs: > {code} > < super ((java.lang.String)null); > --- > > super ((java.io.InputStream)null); > {code} > Source code of GrailsInteractiveCompletor: > https://github.com/grails/grails-core/blob/1239b8edb606cca1c137285393a366898e18e196/grails-bootstrap/src/main/groovy/org/codehaus/groovy/grails/cli/interactive/GrailsInteractiveCompletor.groovy#L47 > however the picke