2011-11-14 8 views
8

La cura estándar para solucionar problemas de Java con distribuciones de Linux como Ubuntu es decir "Usar Sun JDK en lugar de OpenJDK". Por varias razones, me gustaría simplemente utilizar el envío de Java con Ubuntu en lugar de tener que instalarlo y descargarlo de los repositorios de socios o descargar tarballs.¿Hay algún problema con la ejecución de Eclipse con OpenJDK en Linux?

He jugado algunos juegos con Eclipse 3.7.1 bajo Ubuntu 11.10 y no he encontrado ningún showtoppers deslumbrante.

Pregunta es: ¿Hay nada que no funciona correctamente con la instalación predeterminada de (EDIT: OpenJDK) Java en Ubuntu en absoluto, o hay algo que debería tener en cuenta?

+0

¿Por qué no lo intentas? Cualquier respuesta que obtenga aquí podría estar desactualizada con la próxima versión de Eclipse o OpenJDK o incluso parches de Ubuntu. No estoy seguro de lo que estás esperando aquí. – Mat

+1

@Mat - "Solo intentarlo" no es una buena manera de descubrir problemas sutiles probablemente enraizados en la combinación de hardware y software, excepto que tienes mucho tiempo y muchas configuraciones de máquina diferentes. El "uso de la distribución del sol en lugar de openjdk" aparece prominentemente al iniciar intellij en Linux. El [problema] correspondiente (http://youtrack.jetbrains.net/issue/IDEA-70860) así como el [foro de discusión] (http://devnet.jetbrains.net/thread/305004) no proporcionan más información informaciónMe suena como un mito urbano :) – kostja

+0

@Mat, como dije en mi pregunta "lo he intentado". Algunas diferencias pueden ser muy elusivas. –

Respuesta

3

Ahora OpenJDK 7 es una implementación estándar de Java. Oracle JDK 7 está basado en el código openjdk7, excepto en algunas características adicionales, que no están incluidas en la especificación Java

Por lo tanto, no debe haber una diferencia de rendimiento (no puedo verlo). Ubuntu 11.10 tiene openjdk7 en el repositorio.

De lo contrario, Openjdk6 es realmente más lento que SunJDK6. Entonces, si necesita usar jdk6, es mejor cambiar a Sun JDK6

+0

"no debería" es un poco vago. ¿Puedes elaborar? –

+0

Ahora OpenJDK 7 es una implementación estándar de Java. Oracle JDK 7 se basa en el código openjdk7, excepto algunas características adicionales, que no están incluidas en la especificación de Java. No veo ninguna diferencia en el rendimiento de estas versiones. –

0

No es que haya "nada que no funcione correctamente con la instalación predeterminada de Java en Ubuntu". He usado OpenJDK mucho en Ubuntu y Fedora Core y nunca he encontrado errores bizarros.

Sin embargo, y esto es un gran "sin embargo", si utiliza estructuras sofisticadas como Hibernate o algunas cosas de Spring (como cosas AspectJ), que hacen cosas exóticas y no estándar (como modificaciones de códigos de bytes, recompilación sobre la marcha etc, etc., usted tendrá problemas con OpenJDK pero todos funcionarán bien con Oracle/Sun JDK. Siempre cambio de OpenJDK a Oracle JDK cuando hago este tipo de desarrollo.

+0

¿Cuándo fue la última vez que tuvo problemas con OpenJDK? –

+0

Al construir mi proyecto JPA2 & Hibernate 3.6 & CDI & EJB 3.1 Glassfish bajo Fedora 10 con Glassfish 3. He gastado 30 minutos tratando de encontrar la manera de solucionarlo, finalmente cambié a Oracle JDK 6 update 20+ y funcionó bien . También en Windows no obtuve el error con Oracle JDK. Tuve problemas similares con JRockIt en Windows. –

+0

Solo estaba buscando una fecha aproximada. Pero, al parecer, su entorno solo funciona correctamente con Sun JVM en primer lugar. Puede ser difícil de encontrar: ahora hay un lanzamiento de AIX de Glassfish que no tiene dependencias Sun JVM. –

3

He tenido bastantes problemas con varios complementos (Android Update) usando openjdk6 en Ubuntu 11.10. Sun JRE 'acaba de arreglar' los problemas.

No puedo simplemente actualizar a java 7 porque estoy trabajando con la fuente abierta de Android (AOSP) que aún no admite la compilación con java 7. Solo de alguna forma es compatible con la construcción con openjdk6.

A veces el borde sangrante es solo sangrado. Por ahora me quedo con Sun JDK 6. Es la implementación de referencia y parece que 'solo funciona'. Para qué me estoy dirigiendo. Estas son herramientas para mí, mi objetivo principal aquí no es depurar mis herramientas antes de su uso.

Felicitaciones para la gente de OpenJDK por ser 99.9% allí. Una vez que todos los demás se pongan al día con ellos, la vida será genial.

Oh y Oracle pueden rellenarlo para el cambio de licencia que causó muchos de estos problemas. Larry no necesita otro bote.

-JZ

+0

Puede compilar para Java 6 con Java 7 –

Cuestiones relacionadas