开发者

Why don't my groovy enums work, or even compile?

开发者 https://www.devze.com 2022-12-21 23:34 出处:网络
I\'m running Groovy Version: 1.7.0 JVM: 1.6.0_17 (Update -- I jus开发者_如何转开发t upgraded to 1.7.1 and get the same errors!)

I'm running Groovy Version: 1.7.0 JVM: 1.6.0_17

(Update -- I jus开发者_如何转开发t upgraded to 1.7.1 and get the same errors!)

I've tried to use enums, using the exact syntax from the groovy documentation, and each time I see the compile error:

Groovy:The class java.lang.Enum refers to the class java.lang.Enum and uses 1 parameters, but the referred class takes no parameters

Any ideas on what's going on?

For example: This code won't compile or run, and gets the error above.

enum VehicleStatus { OFF, IDLING, ACCELERATING, DECELARATING }

class Vehicle
{
    Long id
    Long version
    VehicleStatus status
}


This may be an error with the Netbeans IDE: http://netbeans.org/bugzilla/show_bug.cgi?id=189275

I've found that, after running Clean, the error persists in the editor, but does not actually cause a problem at runtime.


Works for me.

See http://groovyconsole.appspot.com/script/79003


I just tried this. I receive the same error as you if the only code in the script is the same as yours. However, it goes away once you add the line

def a = new Vehicle(id: 1, version: 0, status: VehicleStatus.IDLING) 

I'm using Groovy 1.7.1 as well and executing the script from within Netbeans 6.8.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号