¿Puede el comando java
ejecutar un código scala compilado? Si es así, ¿por qué tenemos un comando exclusivo scala
?¿Puede Java ejecutar un código scala compilado?
Respuesta
Puede ejecutar el código de bytes generado por Scala si incluye todas las bibliotecas de ejecución necesarias para Scala (scala-library.jar, scala-swing.jar ...) en el classpath. El comando scala hace esto automáticamente y admite argumentos de línea de comando específicos de Scala.
Scala está diseñado para integrarse fácilmente con aplicaciones que se ejecutan en máquinas virtuales modernas, principalmente la máquina virtual de Java (JVM). El compilador principal de Scala , scalac, genera los archivos de la clase Java que se pueden ejecutar en la JVM. ->http://www.artima.com/scalazine/articles/steps.html
Mientras que haya instalado el tiempo de ejecución Scala que debe estar bien: compilar clases con scalac
y ejecutarlos con java
.
Sí, puede. Scala está compilado en Java bytecode. Pero recuerde que depende de las clases de tiempo de ejecución de Scala, por lo que necesita tener los archivos jar de Scala en classpath.
Si es así, ¿por qué tenemos un comando exclusivo scala?
Envoltura de conveniencia.
Sólo quiero añadir mi propia respuesta como valor adicional para los futuros lectores:
Scala, si se ejecuta sin parámetros, se ejecutará un shell interactivo
Scala, si se ejecuta con un nombre de archivo de texto como parámetro, se considerará el archivo como un script Scala
los dos no se puede hacer usando java
Ambos se pueden hacer, pero es particularmente molesto hacerlo: debe llamar a scala.tools.nsc.MainGenericRunner y asegurarse de que las herramientas adecuadas se encuentran en el classpath. ¿Por qué no dejar que la secuencia de comandos Scala lo haga por usted? –
- 1. ¿Incluye Java comentarios sobre el código compilado?
- 2. ¿Puede un script de Scala hacer referencia a otro código scala no compilado en el mismo directorio?
- 3. ejecutar código Java en Java
- 4. ¿Se puede compilar un programa Scala para ejecutar en cualquier JVM, sin tener Scala instalado en la máquina determinada?
- 5. código compilado impar
- 6. ¿Puede un lenguaje compilado ser homoicónico?
- 7. ¿Cómo puedo verificar la vinculación entre código Java compilado?
- 8. Cómo depurar el código compilado de Java en Eclipse
- 9. Rendimiento del código compilado por el compilador compilado
- 10. ¿Cómo ejecutar el código scala en Intellij Idea 11?
- 11. Método en objeto complementario compilado en métodos estáticos en scala?
- 12. ¿Cómo ejecutar el código F # encontrado en una cadena en un programa F # compilado?
- 13. ¿Cómo se puede ejecutar un programa compilado en el lenguaje de máquina en diferentes máquinas?
- 14. ¿Cómo ejecutar un marco OSGi dentro del código java habitual?
- 15. ¿Llamar al código de Scala desde Java?
- 16. Scala no puede multiplicar dobles de Java?
- 17. ¿Puede un script PHP ejecutar código común antes de exit()?
- 18. ¿Se puede compilar un código groovy para ejecutar en JRE?
- 19. únicos anidada Scala de código Java
- 20. NoSuchMethodError al llamar código java de Scala
- 21. Compilar y ejecutar código fuente desde la aplicación Java
- 22. ejecutar archivos Scala compilados en Java Virtual Machine
- 23. ¿Cómo compilar y ejecutar código scala rápidamente en vim?
- 24. Cómo ejecutar el código Scala en Intellij Idea 10
- 25. ¿Cómo ejecutar código MATLAB desde Java?
- 26. Scala - Interoperabilidad Java: ¿Scala puede emitir enumeraciones en bytecode para Java?
- 27. ¿Java es un lenguaje de programación compilado o interpretado?
- 28. ¿Se puede mantener la base de código scala grande?
- 29. Convertir automáticamente código de Scala a código de Java
- 30. ¿Puede C++ llamar código Java?
Scala es un intérprete, mientras scalac es una imagen de obsequio iler ... no solo por conveniencia sino también por una técnica diferente. – atamanroman
Puede iniciar el intérprete scala con el comando "java" si lo intentó ... – Thilo
También puede iniciar el compilador, es simplemente otra clase que debe ejecutarse (scala.tools.nsc.Main, con los argumentos apropiados) Pero la conveniencia es conveniente, entonces ¿por qué hacerlo de la manera difícil? –