Programación·Recetas·Ubuntu

Spring Boot live application information en VSCode

spring-bool-live-application-information-en-vscode

En las últimas versiones de Spring Boot, el soporte JMX no está habilitado por defecto.  Para habilitarlo, es necesario arrancar la aplicación con algo como esto:

java -Dspring.jmx.enabled=true -Dspring.application.admin.enabled=true -jar target/spring-petclinic-2.2.0.BUILD-SNAPSHOT.jar

En VSCode, la extensión al arrancar la aplicación usando el SPRING-BOOT DASHBOARD ya se establece a true la propiedad spring.application.admin.enabled pero no ocurre lo mismo con spring.jmx.enabled.

Para conseguirlo tenemos que abrir el fichero .vscode/launch.json y añadir el parámetro de configuración vmArgs con dicho valor:

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "type": "java",
            "name": "Debug (Launch)-PetClinicApplication",
            "request": "launch",
            "cwd": "${workspaceFolder}",
            "console": "internalConsole",
            "stopOnEntry": false,
            "mainClass": "org.springframework.samples.petclinic.PetClinicApplication",
            "projectName": "spring-petclinic",
            "args": "",
            "vmArgs": "-Dspring.jmx.enabled=true"
        },
        {
            "type": "java",
            "name": "Debug (Attach)",
            "request": "attach",
            "hostName": "localhost",
            "port": 0
        }
    ]
}

Además, en el spring-boot tooling, el language server ya no se auto conecta con la mayoría de procesos (una excepción son las aplicaciones lanzadas por el Boot Dashboard de Eclipse).  Esto lo tienes que hacer explícitamente en VSCode del siguiente modo:

  1. Pulsa CTRL-SHIFT-P
  2. Escribe ‘live
  3. Selecciona el comando ‘Manage Live Boot Process Connections
  4. Selecciona el proceso de tu aplicación y conéctate al mismo.

vía

node

¿Pero qué demonios es package-lock.json?

nodejs

package-lock.json es un fichero muy importante que te evitará un montón de problemas en tus repositorios.

Pero antes de entrar en la discusión acerca de package-lock.json vamos a hablar un poco acerca de el versionado semántico y package.json. Sigue leyendo “¿Pero qué demonios es package-lock.json?”

Java

Eclipse MicroProfile

Historia

mp-logo-w-tagline

  • 2016
    El 27 de Junio de 2016, durante una key note de la DevNation, Red Hat, IBM, Payara, Tomitribe y London Java Community anunciaron un Micro Profile para Java EE con el objetivo de optimizar las arquitecturas Java EE para microservicios.
    Se trataría de un nuevo Profile (introducidos en Java EE 6) no oficial.
    El 19 de Septiembre, durante la JavaOne 2016, se anunció la primera versión oficial.
    El 14 de Diciembre se anuncia que oficialmente MicroProfile se convierte en Eclipse MicroProfile.
  • 2017
    El 8 de Agosto de 2017 se anunció en el hangout público de Eclipse MicroProfile la nueva versión MicroProfile 1.1, una nueva revisión que únicamente añadía una nueva especificación, la Config API. Esta especificación proporciona la capacidad de configurar la aplicación para diferentes estados/entornos del ciclo de vida de desarrollo software (Software Development Lifecycle SDLC) sin tener que re-empaquetar y re-construir la aplicación.
    El 3 de Septiembre de 2017 se anuncia la disponibilidad de MicroProfile 1.2, que actualiza el Config API y añade Health Check, Fault Tolerance, Metrics y JWT Authentication API.
    En Noviembre de 2017, Oracle se suma como miembro de la organización que soporta la iniciativa Eclipse MicroProfile.
  • 2018
    El 3 de Enero de 2018 se anuncia la disponibilidad de Eclipse MicroProfile 1.3 que actualiza alguna versión de las APIs existentes y añade las de OpenAPI (para la generación automática de API para los microservicios), OpenTracing (que permite trazar las peticiones en una arquitectura de servicios distribuidos) y Rest Client (un modo consistente de invocar a los servicios).
    El 28 de Junio se anuncia la disponibilidad de Eclipse MicroProfile 1.4 y 2.0. La versión 1.4 se anuncia como la última compatible a nivel de versiones con Java EE7 mientras que la 2.0 se alinea con las versiones de la especificación Java EE 8 y añade el API JSON-B.
    El 19 de Octubre se anuncia MicroProfile 2.1 que trae como única novedad la revisión 1.2 del API Open Tracing.

Sigue leyendo “Eclipse MicroProfile”

Java

Principales características de las versiones de JavaEE

java-ee.png

Versión Fecha de Lanzamiento
JPE Anuncio en Mayo de 1998
J2EE 1.2 12 Diciembre 1999
J2EE 1.3 24 Septiembre 2001
J2EE 1.4 11 Noviembre 2003
Java EE 5 11 Mayo 2006
Java EE 6 10 Diciembre 2009
Java EE 7 28 Mayo 2013
Java EE 8 31 Agosto 2017

Sigue leyendo “Principales características de las versiones de JavaEE”

Java

Principales características de las versiones de Java

java_versions

Versión Fecha de lanzamiento Fin de Actualizaciones Públicas Gratuitas Fin de Soporte Extendido
JDK Beta 1995
JDK 1.0 Enero 1996
JDK 1.1 Febrero 1997
J2SE 1.2 Diciembre 1998
J2SE 1.3 Mayo 2000
J2SE 1.4 Febrero 2002 Octubre 2008 Febrero 2013
J2SE 5.0 Septiembre 2004 Noviembre 2009 Abril 2015
Java SE 6 Diciembre 2006 Abril 2013 Diciembre 2018
Java SE 7 Julio 2011 Abril 2015 Julio 2022
Java SE 8 (LTS) Marzo 2014 Enero 2019 para Oracle (comercial)
Diciembre 2020 para Oracle (no-comercial)
Al menos hasta Septiembre 2023 para AdoptOpenJDK
Marzo 2025
Java SE 9 Septiembre 2017 Marzo 2018
Java SE 10 (18.3) Marzo 2018 Septiembre 2018
Java SE 11 (18.9 LTS) Septiembre 2018 Al menos hasta Septiembre de 2022 para AdoptOpenJDK
Java SE 12 (19.3) Marzo 2019 Septiembre 2019 para OpenJDK

Sigue leyendo “Principales características de las versiones de Java”

Java

De JavaFX a OpenJFX

JavaFX_Logo.png

Introducción

JavaFX es la tercera generación de la plataforma de interfaz de usuario (GUI) de Java (tras AWT y Swing) para el desarrollo de Escritorio (Desktop) y de Aplicaciones de Internet Ricas (Rich Internet Application). Desde la JDK8 formar parte de Java SE pero, a partir de la versión 11, el proyecto será un módulo independiente.

Sigue leyendo “De JavaFX a OpenJFX”