Details
-
Type:
Bug
-
Status:
Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 1.8.5
-
Fix Version/s: 1.8.6, 2.0-beta-3
-
Component/s: Ant integration
-
Labels:None
-
Environment:Hidesargis@sargis:~/projects/twm3.git/modules/accounting> java -version
java version "1.7.0_02"
Java(TM) SE Runtime Environment (build 1.7.0_02-b13)
Java HotSpot(TM) 64-Bit Server VM (build 22.0-b10, mixed mode)
sargis@sargis:~/projects/twm3.git/modules/accounting> groovy --version
Groovy Version: 1.8.5 JVM: 1.7.0_02 Vendor: Oracle Corporation OS: Linux
sargis@sargis:~/projects/twm3.git/modules/accounting>
Showsargis@sargis :~/projects/twm3.git/modules/accounting> java -version java version "1.7.0_02" Java(TM) SE Runtime Environment (build 1.7.0_02-b13) Java HotSpot(TM) 64-Bit Server VM (build 22.0-b10, mixed mode) sargis@sargis :~/projects/twm3.git/modules/accounting> groovy --version Groovy Version: 1.8.5 JVM: 1.7.0_02 Vendor: Oracle Corporation OS: Linux sargis@sargis :~/projects/twm3.git/modules/accounting>
-
Number of attachments :
Description
Hi, I have following groovy class TransactionStatus.groovy with code:
package com.webbfontaine.twm.accounting.epaylog.emess.model.response
public enum TransactionStatus
{ OK, ERROR }and compilation of this class using groovy 1.8.4 was ok but after migrating to 1.8.5 I have following:
groovy.compile:
[mkdir] Created dir: /home/sargis/projects/twm3.git/modules/accounting/Server/classes
[groovyc] Compiling 186 source files to /home/sargis/projects/twm3.git/modules/accounting/Server/classes
[groovyc] org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
[groovyc] Compile error during compilation with javac.
[groovyc] warning: [options] bootstrap class path not set in conjunction with -source 1.6
[groovyc] /tmp/groovy-generated-3682106614822967278-java-source/com/webbfontaine/twm/accounting/epaylog/emess/model/response/TransactionStatus.java:10: error: modifier final not allowed here
[groovyc] public final enum TransactionStatus
[groovyc] ^
[groovyc] Note: Some input files use or override a deprecated API.
[groovyc] Note: Recompile with -Xlint:deprecation for details.
[groovyc] Note: Some input files use unchecked or unsafe operations.
[groovyc] Note: Recompile with -Xlint:unchecked for details.
[groovyc] 1 error
[groovyc] 1 warning
[groovyc]
[groovyc]
[groovyc] 1 error
I am using
<taskdef name="groovyc" classname="org.codehaus.groovy.ant.Groovyc">
</taskdef>
to compile groovy codes of my project.
Enums cannot be extended, so the final modifier here is not allowed. Just remove the final modifier and it will be ok. Groovy now behaves like Java in that situation.