2013-08-04 4 views
1

Je suis nouveau à CoffeeScript et peut-être que je fais quelque chose d'étrange, mais je reçois un ClassCastException lorsque je tente de compiler le code CoffeeScript suivant:compilateur CoffeeScript lance ClassCastException

if 1 == 1 then 
    alert 'Thats always true' 

Si je l'écris sous la forme suivante :

if 1 == 1 then alert 'Thats always true' 

cela fonctionne ... Y at-il une erreur de syntaxe? Même si c'est le cas je ne m'attendrais jamais à une erreur de compilateur interne si je fais une erreur de syntaxe ...

J'utilise le plugin NetBeans CoffeeScript. Voici l'exception:

java.lang.ClassCastException: java.lang.Integer ne peut pas être jeté à java.lang.Double à coffeescript.nb.CoffeeScriptRhinoCompiler.compile (CoffeeScriptRhinoCompiler.java:59) à coffeescript.nb.CoffeeScriptAction $ CompilerTask.compile (CoffeeScriptAction.java:236) à coffeescript.nb.CoffeeScriptAction $ ConsoleOutputCompileTask.run (CoffeeScriptAction.java:193) à org.netbeans.core.execution.RunClassThread.run (RunClassThread. java: 153)

Répondre

1

Vous n'utilisez pas then avec un code au niveau du bloc. Comme pour l'exception, il doit s'agir d'un bogue dans le plugin ou NetBeans lui-même. Le compilateur CoffeeScript affiche correctement une erreur "POST_IF inattendue".

+0

Cela résout le problème ... Mais l'erreur du compilateur est encore étrange ... Peut-être que c'est juste la loi de Murphy :-) – treeno