Articulo de referencia

Implementaciones Java gratuitas

Las implementaciones de Java libres son proyectos de software que implementan las tecnologías Java de Oracle y se distribuyen bajo licencias de software libre , lo que las convi...

Las implementaciones de Java libres son proyectos de software que implementan las tecnologías Java de Oracle y se distribuyen bajo licencias de software libre , lo que las convierte en software libre . Sun publicó la mayor parte de su código fuente de Java como software libre en mayo de 2007, por lo que ahora casi puede considerarse una implementación de Java libre. [ 1 ] Las implementaciones de Java incluyen compiladores, entornos de ejecución, bibliotecas de clases, etc. Los defensores del software libre y de código abierto se refieren al software de máquina virtual Java libre o de código abierto como entornos de ejecución libres o entornos de ejecución de Java libres .

Algunos defensores de este movimiento prefieren no usar el término "Java" debido a los problemas de marca registrada que conlleva. Por lo tanto, aunque se trata de un "movimiento Java libre", evitan el término "entornos de ejecución Java libres".

Desde mediados de la década de 1990 hasta 2006

El primer proyecto gratuito que ofreció partes sustanciales de la funcionalidad de la plataforma Java fue probablemente guavac, que comenzó algún tiempo antes de noviembre de 1995. [ 2 ] [ 3 ]

Desde entonces, el movimiento del software libre desarrolló otros compiladores de Java, entre los que destaca el Compilador GNU para Java . Otros incluyen el Compilador Java de Eclipse (ECJ), mantenido por la Fundación Eclipse , y Jikes , que ya no recibe mantenimiento activo. Desde el lanzamiento de la versión 4.3 de la Colección de Compiladores GNU , GCJ (su compilador de Java) utiliza el analizador sintáctico de ECJ para analizar Java. [ 4 ]

Algunos ejemplos de entornos de ejecución gratuitos son Kaffe , SableVM y gcj .

GNU Classpath es la principal biblioteca de clases de software libre para Java. La mayoría de los entornos de ejecución libres utilizan GNU Classpath como su biblioteca de clases.

En mayo de 2005 se anunció Apache Harmony ; sin embargo, el proyecto optó por la Licencia Apache , que en aquel momento era incompatible con todas las implementaciones de Java libres existentes.

Otro acontecimiento de mayo de 2005 fue el anuncio de que OpenOffice.org 2.0 dependería de características de Java que las implementaciones de software libre no podían proporcionar. Tras la controversia, OpenOffice.org adoptó una directriz que le obligaba a trabajar con implementaciones libres de Java.

Entre las aplicaciones destacadas que ya funcionaban con implementaciones de Java de software libre antes de noviembre de 2006 se incluyen OpenOffice.org y Vuze , ambas compatibles cuando se compilan con GCJ.

Anuncio del periódico Sun de noviembre de 2006

El 13 de noviembre de 2006, Sun lanzó su compilador, javac , bajo la Licencia Pública General de GNU . [ 5 ]

En septiembre de 2007, además de javac, Sun publicó el código de HotSpot (la máquina virtual ) y casi toda la biblioteca de clases de Java como software libre.

Siguiendo su promesa de lanzar un JDK completamente compilable basado casi por completo en código libre y de código abierto en la primera mitad de 2007, [ 6 ] Sun lanzó el código fuente completo de la biblioteca Class bajo la GPL el 8 de mayo de 2007, excepto algunas partes limitadas que Sun había licenciado de terceros que no querían que su código se publicara bajo una licencia de software libre. [ 7 ] Sun ha declarado que su objetivo es reemplazar las partes que siguen siendo propietarias y de código cerrado con implementaciones alternativas y hacer que la biblioteca Class sea completamente libre y de código abierto. Dado que hay algo de código restringido en el JDK, Sun continuará usando ese código en versiones comerciales hasta que sea reemplazado por alternativas libres y de código abierto completamente funcionales.

Tras la publicación del código en mayo de 2007

A mayo de 2008, la única parte de la biblioteca de clases que sigue siendo propietaria (4% a mayo de 2007 para OpenJDK 7, [ 8 ] [ 9 ] y menos del 1% a mayo de 2008 en OpenJDK 6 [ 10 ] [ 11 ] ) es la implementación de SNMP . [ 12 ]

Desde su primer lanzamiento en mayo de 2007, Sun Microsystems , con la ayuda de la comunidad, ha liberado como software libre (o lo ha reemplazado con alternativas de software libre) casi todo el código restringido:

Debido a estos componentes previamente restringidos, no era posible compilar OpenJDK únicamente con componentes de software libre. Para poder hacerlo antes de que toda la biblioteca de clases se libere, y para poder incluir OpenJDK en Fedora Core y otras distribuciones Linux libres , Red Hat inició un proyecto llamado IcedTea . Se trata básicamente de un híbrido de OpenJDK/ GNU Classpath que se puede usar para inicializar OpenJDK utilizando solo software libre. [ 23 ] [ 24 ]

A partir de marzo de 2008, la distribución Fedora 9 se lanzó con OpenJDK 6 en lugar de la implementación IcedTea de OpenJDK 7. [ 11 ] Algunas de las razones indicadas para este cambio son:

  • Sun ha sustituido la mayoría de las limitaciones para las que IcedTea proporcionaba reemplazos (menos del 1% del código con limitaciones permanece en la biblioteca de clases , y este código no es necesario para ejecutar OpenJDK).
  • OpenJDK 6 era una rama estable, mientras que OpenJDK 7 era inestable y no se esperaba que lanzara una versión estable hasta 2009.
  • Sun ha otorgado la licencia de la marca registrada OpenJDK para su uso en Fedora.

En junio de 2008, se anunció que IcedTea 6 (como la versión empaquetada de OpenJDK en Fedora 9 ) había pasado las pruebas del Kit de Compatibilidad Tecnológica y puede afirmar ser una implementación de Java 6 totalmente compatible. [ 25 ]

En septiembre de 2013, Azul Systems lanzó Zulu, una versión gratuita y de código abierto de OpenJDK para Windows Server y la nube de Microsoft Azure . Las versiones posteriores añadieron compatibilidad con Mac OS X , varias versiones de Linux y la plataforma Java, Standard Edition versión 8. Zulu cuenta con la certificación de conformidad con Java SE 8, 7 y 6 mediante el kit de compatibilidad tecnológica de la comunidad OpenJDK . [ 26 ]

Amazon ha lanzado Amazon Corretto, una distribución gratuita, multiplataforma y lista para producción del Open Java Development Kit. Se distribuye bajo la licencia GPL v2 con la excepción Classpath . Hay disponibles versiones con soporte a largo plazo de Java 8 y Java 11. Su lanzamiento público tuvo lugar el 31 de enero de 2019. [ 27 ]

En 2017, la Fundación Eclipse lanzó AdoptOpenJDK, ahora llamado Adoptium , cuyo objetivo principal es "promover y respaldar entornos de ejecución de alta calidad, gratuitos y de código abierto, y la tecnología asociada para su uso en todo el ecosistema Java ".

Véase también

Referencias

  1. "OpenJDK y el proyecto IcedTea" . www.redhat.com (en coreano) . Consultado el 16 de diciembre de 2019 .
  2. "Anuncio: guavac 0.2.5, un compilador gratuito para el lenguaje Java" . 7 de septiembre de 1996. Archivado del original el 14 de agosto de 2009. Consultado el 24 de junio de 2007 .
  3. "Registro de cambios de guavac, que muestra la primera versión publicada en enero de 1996" . Archivado del original el 28 de septiembre de 2007. Recuperado el 24 de junio de 2007. Miércoles 22 de noviembre de 1995, 05:43:07 [...] CompilerMain.C, Compiler. C, Compiler.h, lexer.l, parser.y: Revisión inicial
  4. "Serie de lanzamientos de GCC 4.3: cambios, nuevas características y correcciones" . Consultado el 8 de octubre de 2007 .
  5. Sun elige la licencia GPL para el código Java.
  6. Preguntas frecuentes de OpenJDK archivadas el 2 de abril de 2007 en Wayback Machine
  7. "¡Open JDK ya está aquí!" . Sun Microsystems. 8 de mayo de 2007 . Consultado el 9 de mayo de 2007 .
  8. Herron, David (4 de octubre de 2007). "Planes para OpenJDK" . Archivado del original el 11 de octubre de 2007. Recuperado el 9 de octubre de 2007 .
  9. Fitzsimmons, Thomas (18 de mayo de 2007). "Planes para OpenJDK" . Recuperado el 22 de mayo de 2007 .
  10. Angel, Lillian (13 de marzo de 2008). "OpenJDK reemplazará a IcedTea en Fedora 9" . Archivado del original el 18 de abril de 2008. Consultado el 5 de abril de 2008 .
  11. 1 2 Wade, Karsten (13 de marzo de 2008). "¡OpenJDK en Fedora 9!" . redhatmagazine.com. Archivado del original el 21 de abril de 2008. Recuperado el 5 de abril de 2008. Thomas Fitzsimmons actualizó las páginas de origen de las notas de la versión de Fedora 9 para reflejar que Fedora 9 se distribuiría con OpenJDK 6 en lugar de la implementación IcedTea de OpenJDK 7. Fedora 9 (Sulphur) se lanzará en mayo de 2008.
  12. 1 2 "Código fuente de OpenJDK 6 b10 publicado" . 30 de mayo de 2008. Consultado el 1 de junio de 2008 .
  13. página del proyecto del motor de audio
  14. "Gervill - Sintetizador de software" . Consultado el 1 de junio de 2008 .{{cite web}}: CS1 maint: servicio de archivado obsoleto ( enlace )
  15. "Se ha añadido criptografía a OpenJDK" . 27 de septiembre de 2007. Consultado el 7 de octubre de 2007 .
  16. página del proyecto del escalador de fuentes
  17. 1 2 3 Página del proyecto Java2D
  18. "Rasterizador de fuentes Freetype" . 7 de agosto de 2007. Consultado el 24 de noviembre de 2007 .
  19. phoneme.dev.java.net/ Archivado el 10 de junio de 2007 en Wayback Machine
  20. página del proyecto graphics-rasterizer
  21. Graham, Jim (3 de octubre de 2007). "Rasterizador de código abierto" . Sun Microsystems . Consultado el 9 de mayo de 2007 .
  22. "Javascript está sobrecargado y no hay soporte para complementos de JavaScript" . IcedTea . 11 de marzo de 2008. Archivado del original el 27 de septiembre de 2008. Recuperado el 1 de junio de 2008. Resumen modificado . JavaScript ya no está sobrecargado, pero aún necesitamos soporte para LiveConnect.
  23. Andrew, Haley (7 de junio de 2007). "Repositorio de compilación experimental en icedtea.classpath.org" . Archivado del original el 11 de febrero de 2008. Recuperado el 9 de junio de 2007 .
  24. Wielaard, Mark (7 de junio de 2007). "Repositorio de compilación experimental en icedtea.classpath.org" . Archivado del original el 19 de junio de 2007. Recuperado el 9 de junio de 2007 .
  25. Sharples, Rich (19 de junio de 2008). "Java es finalmente libre y de código abierto" . Archivado del original el 20 de junio de 2008.
  26. "Núcleo" .
  27. Arun Gupta (31 de enero de 2019). "Amazon Corretto 8 ya está disponible para el público en general" . Amazon Web Services . Consultado el 25 de julio de 2019 .
  • Libres pero encadenados: La trampa de Java
  • Cómo escapar de la trampa de Java: Una guía práctica para encontrar alternativas de software libre y de código abierto.
  • Los híbridos combinan GNU Classpath y OpenJDK.
  • Vídeo de una hora de duración de 2007 de un taller con desarrolladores de Sun, GGJ y GNU Classpath.
  • Problemas de marcas registradas de Java