Micronaut es un moderno framework para aplicaciones basadas en la JVM diseñado para optimizar el rendimiento, especialmente en aplicaciones de microservicios y serverless.
Para crear el primer proyecto en micronaut vamos a seguir los siguientes pasos:
Precondiciones
En este artículo trabajaremos con el siguiente entorno:
- Microsoft Windows [Versión 10.0.19044.2604].
- Usaremos micronaut con Kotlin y Gradel
- Editor de texto visual studio code o cualquier editor con el que se sientan cómodo trabajando.
- Documentación oficial de Micronaut
Para realizar algunos de los pasos que se mencionaran en este artículo, debemos tener los siguientes programas instalados:
- Java JDK 17
- Micronaut 4.5.1, en el artículo de instalar micronaut esta el paso a paso de la instalación.
Entornos de trabajo y otras instalaciones
Crear proyecto con comandos
Para crear un proyecto de micronaut con la consola cli nos guiaremos de la documentación oficial.
Con la CLI de Micronaut puede crear una nueva aplicación de Micronaut en Groovy, Java o Kotlin (el valor predeterminado es Java).
Las aplicaciones generadas a través de nuestra CLI incluyen contenedores de Gradle o Maven, por lo que ni siquiera es necesario tener Gradle o Maven instalados en su máquina para comenzar a ejecutar las aplicaciones. Simplemente use el comando o, como se explica más adelante. mvnw gradlew
mn create-app --build=gradle_kotlin --jdk=17 --lang=kotlin --test=junit com.example.demo
La respuesta de la consola es la siguiente:
Crear proyecto desde micrinaut launch
Para kotlin
Si no tiene instalada la CLI, también puede crear la misma aplicación visitando Micronaut Launch
Las opciones para seleccionar son las siguientes:
- Tipo de aplicación (Application type): Puede seleccionar entre estas opciones: Micronaut Application, Command Line Application, Function Application for Serverless, gRPC Application y Messaging-Driven Application.
- Versión de Java: a la fecha esta disponible seleccionar las versiones 8, 11 y 17.
- Nombre (Name): Nombre de la aplicación.
- Paquete base: (Base package): Estructura de los paquetes
- Mucronaut versión: seleccionamos la versión de micronaut con la que vamos a trabajar.
- Lenguaje: tenemos disponible: Java, Groovy y kotlin.
- Herraminetas de construcción (Build tool): Gradle, gradle kotlin y maven.
- Test: JUnit, spock y kotest.
Para java
Si no tiene instalada la CLI, también puede crear la misma aplicación visitando Micronaut Launch
Las opciones para seleccionar son las siguientes:
- Tipo de aplicación (Application type): Puede seleccionar entre estas opciones: Micronaut Application, Command Line Application, Function Application for Serverless, gRPC Application y Messaging-Driven Application.
- Versión de Java: a la fecha esta disponible seleccionar las versiones 8, 11 y 17.
- Nombre (Name): Nombre de la aplicación.
- Paquete base: (Base package): Estructura de los paquetes
- Mucronaut versión: seleccionamos la versión de micronaut con la que vamos a trabajar.
- Lenguaje: tenemos disponible: Java, Groovy y kotlin.
- Herraminetas de construcción (Build tool): Gradle, gradle kotlin y maven.
- Test: JUnit, spock y kotest.
Por ultimo damos en generar (generate) donde descargara el archivo zip con el proyecto.
Descargamos el zip en alguna parte de nuestro equipo, con esto ya podemos trabajar.
Ejecutar la aplicacion micronaut
Ejecutar en kotlin
Una vez creado el proyecto, procedemos a iniciar la aplicación, para ello ejecutamos el siguen comando en esta caso si estamos usado a gradel como compilador y gestor de paquetes:
gradlew run
El resultado sera el siguiente
Si accedemos a la url http://localhost:8080 nostrara la siguiente pantalla
Ejecutar en Java
Una vez creado el proyecto, procedemos a iniciar la aplicación, para ello ejecutamos el siguen comando en esta caso si estamos usado a maven como compilador y gestor de paquetes:
mvnw mn:run
El resultado sera el siguiente
Si accedemos a la url http://localhost:8080 nostrara la siguiente pantalla
Podemos observar que ha iniciado el servidor de prueba, pero muestra un error, esto es por que no se ha creado ningún controlador que exponga un servicio, este tema lo detallamos en el siguiente artículo.