2009-07-06 10 views
6

Tengo un proyecto que está mezclado con Java/Scala, es el código de la GUI de Java que hace uso de una biblioteca de Scala. ¿Hay alguna forma de escribir el código de Scala para que emita enumeraciones Java en tiempo de compilación? Los enfoques que probé hasta ahora (clases de casos sellados, extender enumeración) parecen generar clases normales, lo que hace que trabajar con ellos desde Java sea mucho más peludo que las enumeraciones directas.Scala - Interoperabilidad Java: ¿Scala puede emitir enumeraciones en bytecode para Java?

Respuesta

4

¿Por qué no puedes escribir tu enum clase en Java? Los proyectos de origen mixto (es decir, Java + Scala) son perfectamente factibles ...

+0

De hecho, esa fue también mi conclusión, aceptaré esta respuesta. Sin embargo, el apoyo de Maven para proyectos mixtos sigue siendo escamoso. –

+0

Continúo escribiendo mis enumeraciones en Java exactamente por este motivo. –

0

Scala solo es compatible con las funciones de Java 1.4 en este momento.

Los Java Enums se introdujeron en Java 1.5.

+1

Er, aparte de genéricos –

+1

Los genéricos se implementan con borrado de tipo, después de la compilación ya no hay genéricos. Pero Scala admite anotaciones que se retienen al compilar en bytecode y definitivamente es una característica de Java 1.5. –

+1

Los genéricos en Java también se implementan mediante borrado de tipos –

Cuestiones relacionadas