FAQ
Get answers to some of your common Quarkus questions.
¿Qué licencia tiene?
Quarkus es un proyecto de código abierto con licencia Licencia Apache versión 2.0.
¿Dónde puedo conseguirlo?
Quarkus es publicado en Maven Central, para obtener Quarkus consulte el qué extensiones y simplemente impórtelos en su pom.xml
. Le recomendamos que comience su experiencia con Quarkus a través de nuestro Guías de inicio.
¿Quarkus es estable?
Sí, consideramos que Quarkus es estable. Recuerde que el 95 % de las funciones que usan las aplicaciones de Quarkus las proporciona el ecosistema como Hibernate ORM, Eclipse Vert.x, Netty, RESTEasy, etc. Estas bibliotecas son sólidas como una roca :)
Puedes ir a code.quarkus.io para ver si una extensión en particular es stable (default) o preview.
¿Qué es una extensión de Quarkus?
Uno de los principales objetivos de Quarkus es la facilidad de extensibilidad y la construcción de un ecosistema vibrante.
Piense en las extensiones de Quarkus como dependencias de su proyecto. Las extensiones configuran, arrancan e integran un framework o tecnologías en su aplicación de Quarkus. También hacen todo el trabajo pesado de proporcionar la información correcta a GraalVM para que su aplicación se compile de forma nativa. Esto permite que los proyectos de terceros aprovechen fácilmente el trabajo que hemos realizado para que sea más fácil utilizar GraalVM.
¿Cuáles son los estados de las extensiones?
Las extensiones tienen varios grados de madurez a medida que ingresan al ecosistema de Quarkus. El estado ofrece el valor esperado de confianza.
Stable: la compatibilidad con versiones anteriores y la presencia en el ecosistema se toman muy en serio. Una aplicacion pueden confiar de manera segura en estas extensiones. Las extensiónes no están marcadas como preview o experimental (la mayoría) son estables.
Preview: la compatibilidad con versiones anteriores y la presencia en el ecosistema no están garantizadas. Ciertas mejoras pueden requerir cambios de configuración o API, y los planes para convertirse en stable están en marcha. Estas extensiones están en pleno proceso de maduración.
Experimental: se solicita un feedback temprano para madurar la idea. No se garantiza la estabilidad ni la presencia a largo plazo en la plataforma hasta que la solución madure. Dichas extensiones están al comienzo de su proceso de maduración.
Deprecated: backward compatibility and presence in the ecosystem is not guaranteed. Such extensions are likely to be replaced or removed in a future version of Quarkus.
Puede encontrar el estado de la extensión en code.quarkus.io o en las guías de la extensión.
¿El equipo de Quarkus aceptará mi extensión?
¡Por supuesto! Se ha creado un número significativo de extensiones fuera del equipo "inicial" de Quarkus.
Quarkus es un ecosistema abierto y espera tener todas las extensiones que la gente necesita para crear aplicaciones. Estamos trabajando mientras hablamos para permitir que una extensión se publique en repositorios y GAV separados y por lo tanto se publique en repositorios Maven independientes del core de Quarkus. Esto simplificará enormemente el proceso de publicación. Espere noticias pronto.
La limitación actual es que las extensiones deben funcionar con los ejecutables nativos de OpenJDK y GraalVM. Esta es una garantía que brindamos a los usuarios de Quarkus (compilación cruzada de aplicaciones). Tenemos un modelo de madurez para mejorar una extensión para que sea completamente "Quarked" y beneficiarse de Quarkus, todo hecho en pasos incrementales. Visite nuestra lista de correo para discutir ideas y obtener apoyo. También puede comenzar a leer guía sobre crear extensiones o puede inspirarse en alguna de las existentes.
What is GraalVM?
GraalVM es una máquina virtual universal para ejecutar aplicaciones escritas en varios lenguajes diferentes, además de brindar la capacidad de compilar código de bytes JVM en un ejecutable nativo (este ejecutable nativo ejecuta una maquina virtual especial llamada SubstrateVM). Estos ejecutables nativos se inician mucho más rápido y pueden usar mucha menos memoria que una JVM tradicional, sin embargo, no todas las funciones de JVM son compatibles y algunas son más limitadas de lo normal.
Por ejemplo, de forma predeterminada, la reflexión en GraalVM no funcionará, a menos que una clase/miembro se haya registrado explícitamente para la reflexión. Esto normalmente se logra listando cada clase, método, campo y constructor en un archivo JSON, y pasándolo como un parámetro Obviamente, esto se vuelve bastante engorroso para todos los proyectos, excepto para los más triviales. Quarkus proporciona un marco que facilita el trabajo en torno a estas anotaciones y proporciona un marco que le permite decidir mediante programación qué registrar.