2011-12-19 19 views
20

Oracle ha lanzado la actualización 2 para Java 7, mientras que parece que OpenJDK todavía está en la versión original 147 que se lanzó el verano pasado.¿Dónde están las actualizaciones de Java 7 para OpenJDK?

¿Habrá/habrá actualizaciones disponibles para OpenJDK?

Parece haber un proyecto OpenJDK solo para actualizaciones (http://openjdk.java.net/projects/jdk7u/), que menciona que lanzarán actualizaciones al mismo tiempo que Oracle, pero no puedo encontrar nada.

Gracias

Marc

+0

El cambio más reciente en el repositorio mercurial fue hace 5 meses. Tiene el comentario "Etiqueta añadida jdk7-b147 para el conjunto de cambios d91364304d7c" http://hg.openjdk.java.net/jdk7/jdk7 –

+1

@PeterLawrey que es el árbol congelado. Los cambios más recientes son [aquí] (http://hg.openjdk.java.net/jdk7u/jdk7u-dev/). – assylias

Respuesta

12

Voy a responder a mi propia pregunta aquí para sintetizar todos mis hallazgos y las respuestas por @Agemen y @Kowser anteriormente.

  • OpenJDK es una implementación de referencia y no cambia a menos que la especificación cambia
  • Hay un proyecto de actualización OpenJDK que implementa todas las actualizaciones en el origen (http://openjdk.java.net/projects/jdk7u/, fuente http://hg.openjdk.java.net/jdk7u/jdk7u-dev)
  • OpenJDK no proporcionará ningún compilado o actualizaciones empaquetadas. De hecho, OpenJDK proporcionó binarios para la versión inicial solo para su conveniencia.
  • Es responsabilidad de terceros OS/distribuidores para compilar y empaquetar Java. P.ej. RedHat y Ubuntu
  • Ningún tercero ha publicado actualizaciones para Java 7
  • Estos terceros generalmente usan IcedTea para hacer la compilación y el empaquetado, pero el propio IcedTea no lo hace. http://icedtea.classpath.org/wiki/Main_Page

Ahora tenemos una combinación de cosas que están haciendo uso de Java muy dolorosa en la implementación del servidor de código abierto

  • Oracle JDK tiene actualizaciones (incluyendo parches de seguridad) que ningún paquete de OpenJDK tiene. Esto hace que el uso de cualquier otra cosa que no sea Oracle JDK resulte en una seguridad más pobre
  • Oracle JDK ya no se puede empaquetar distribuido por terceros (por ejemplo, Ubuntu). Ahora tenemos que instalarlo a mano o guiarlo, y mantenerlo, en todos nuestros servidores.

Simplemente no lo entiendo ...

Marc


EDITAR

Como @Krige señaló, las cosas parece que finalmente han golpeado con el pie en el engranaje con OpenJDK construye disponible con las últimas actualizaciones!

+1

Es un ecosistema extraño. Esperando una actualización ... Estoy a punto de instalar un JDK7 de producción en un servidor ubuntu, y no soy lo que debería instalar. – ripper234

+0

No estoy seguro si esto es solo un cambio reciente, pero OpenJDK en Ubuntu obtiene actualizaciones periódicas a través del sistema de administrador de empaquetamiento de software nativo de Ubuntu. La versión actual instalada en mi sistema (OpenJDK Runtime Environment 1.7.0_21, IcedTea 2.3.9) coincide con la actualización más reciente publicada por Oracle ([Java 7u21] (http://www.oracle.com/technetwork/java/javase/ downloads/index.html)). –

3

puedo estar equivocado, pero creo que las fuentes pueden ser recuperados con mercurio en un repositorio diferente. Parece estar dedicado a partir del vinculado por Peter Lawrey en un comentario sobre la pregunta. Los addrees es http://hg.openjdk.java.net/jdk7u/jdk7u-dev

No sé exactamente cómo las ramas y etiquetas son administrados por Oracle y los contribuyentes de OpenJDK, pero tal vez son la primera publicada estable definitivamente congelado, y un acuerdo de recompra clonado se utiliza en lugar de garantizar la inclusión de correcciones ...

Para responder a la pregunta, no estoy seguro de que se suponga que los sitios OpenJDK propongan ninguna versión empaquetada del JDK. La infraestructura de Oracle está hecha para eso, supongo ... Es posible que haya pasado algo por alto, pero creo que los JDK empaquetados que se proporcionan en el sitio web de Oracle son una versión compilada del OpenJDK. Como se ha convertido en la implementación de referencia y Oracle mantiene activamente, no veo por qué debería ser diferente.

EDITAR: Por cierto, no puedo encontrar un enlace directo que pueda usar para descargar un OpenJDK empaquetado en el sitio web de OpenJDK, incluso para la primera versión estable. Pero una vez más, es posible que se pierda algo obvio :-p

EDIT 2: He arreglado el enlace - usted sabe que el enlace a la cesión temporal de todas las fuentes, no sólo el JDK ;-)

Además, como se señala en un enlace dado en los comentarios, hay muchos proyectos bajo OpenJDK ... Entonces la estructura del repos es un poco compleja, con hg "bosques" (que no sabía antes de intentar compilar OpenJDK 7 por mi cuenta) ...).

+4

un par de enlaces útiles; cómo compilar (http://hg.openjdk.java.net/jdk7/build/raw-file/tip/README-builds.html) y estructura del repositorio (http://openjdk.java.net/guide/repositories. html). De alguna manera, explican por qué no es remotamente obvio dónde está el src. – Matt

3

De this blog post, trata de aclarar, no se espera obtener la actualización de OpenJDK a menos que se revise la especificación para Java.

Desde comentario del autor, que se da como explicación, se cita a continuación

Tenemos la intención de producir binarios Linux y Windows RI de la base de código OpenJDK. Técnicamente, solo se necesita uno, pero tradicionalmente Sun proporcionó más de uno para facilitar a los implementadores. Tenga en cuenta que el RI tiene un propósito muy específico (por ejemplo, para servir como el RI) y generalmente no se actualiza, excepto cuando/si se revisa la especificación.

Para aclarar OpenJDK es el RI (Implementación de referencia) de Oracle.

No intenté obtener información exacta de Oracle. Pero estoy convencido con la publicación del blog.


Así que lo que se puede entender: Neither expect any update nor any bug fixes for OpenJDK.

Cuestiones relacionadas