Buscar
Social
Ofertas laborales ES
jueves
jul292010

Solución para los problemas de Eclipse Helios con Java 6 Update 21

Cuando recientemente Oracle publicó Java 6 Update 21 los usuarios de Eclipse Helios tenían problemas con cuelgues del entorno de desarrollo causados por falta de memoria.


El problema se debía a que el lanzador de Eclipse comprobaba si la máquina virtual en la que estaba corriendo era o no la de Sun comprobando si 'Sun Microsystems' aparecía en la cadena de caracteres del vendedor de la máquina virtual. En caso afirmativo, empleaba la opción "-XX:MaxPermSize" para incrementar el tamaño máximo de la memoria de tipo PermGen.

En la Java 6 Update 21 Oracle cambió el vendedor de la máquina virtual, por lo que el lanzador de eclipse no empleaba esta opción. Oracle ha publicado un nuevo build de Java 6 donde ha vuelto a cambiar el nombre del vendedor a 'Sun Microsystems' para resolver este problema. Así que, si estáis usando Eclipse Helios, o bien os actualizais a la build 07 de Java 6 Update 21, o tendréis que configurar vosotros el tamaño del PermGen.

miércoles
jul282010

La única Google DevFest en Europa este año se celebrará en España (Madrid)

La DevFest de Google es una conferencia anual sobre tecnologías de Google gratuita. En ellas se puede asistir a ponencias, hacer "networking" (hacer contactos, vaya ;-)), etc. Podeis ver la página de información sobre este evento en el siguiente enlace: http://code.google.com/intl/es-ES/events/devfests/2010/. Aunque la fecha que citan es el 30 de septiembre, se va a cambiar al 23 de septiembre, y se celebrara en la Facultad de Informatica de la Universidad Complutense de Madrid (salvo que lo vuelvan a cambiar, claro :-)).

Resulta curioso que la unica DevFest de este año en Europa se celebre en Madrid. Es el único evento que se hara en este continente. ¿Alguno os aventurais a explicar en los comentarios si esto es intencional o a qué se puede deber?

miércoles
jul282010

whyline for java, la principal innovación en debuggers Java en mucho tiempo

whyline for java es el resultado de un proyecto de investigación de una universidad americana. Es un nuevo concepto de depurador; desde mi punto de vista es la principal innovación que he visto en este campo desde hace bastante tiempo.


Whyline permite "grabar" la ejecución de un programa Java, y una vez ha sido grabada permite volver a reproducirla, o navegar hasta un determinado punto de la ejecución. Básicamente, ha convertido la ejecución en un video, y empleando un slider podemos movernos hacia adelante o hacia atrás en la ejecución.


El propósito de esto es "volver" al punto donde se produjo un bug, y poderlo reproducir. Pero no sólo esto, sino que (al menos en aplicaciones swing, no me queda claro si tiene algún tipo de soporte para otras aplicaciones) una vez hemos visto donde se produce el bug podemos interactuar con la interfaz gráfica del programa y a partir de los componentes gráficos podemos "preguntar" porque ha sucedido algo (why-line).


Es posible aplicar filtros sobre la línea temporal de ejecución de la aplicación, de tal modo que sólo se muestra ciertos eventos. Por ejemplo, podríamos filtrar todo lo que no sean eventos de mover un slider; entonces la línea de ejecución de la aplicación sólo se mostraría cuando este tipo de eventos se estaban generando. También permite "guardar" ejecuciones y volverlas a reproducir, o compartirlas con otros desarrolladores.


La herramienta permite inspeccionar visualmente cualquier propiedad de un componente swing, y al preguntarle por qué una determinada propiedad tiene un determinado valor nos lleva a la línea de código responsable de ese valor de la propiedad. Una vez llegamos esa línea, también permite navegar por el código viendo líneas relacionadas.


En este pequeño video, muy útil para comprender cómo funciona la herramienta, muestra cómo resolver un problema con una aplicación swing básica que funciona como un paint. Aquí tenéis un video tutorial más amplio.


En principio, da la impresión de que la aplicación sólo funciona con aplicaciones swing. La aplicación es gratuita, y será opensource en el futuro. Actualmente no está disponible el código fuente porque los autores están solicitando patentes relativas a ella.


¿Qué opinan sobre esta herramienta?  

 

 

 

martes
jul272010

11 Agosto, prox crjug

Hola comunidad, 


Esta noticia va mas orientada a los miembros de Java Hispano en Costa Rica; en agosto se presentara el proyecto padronelectoralcr (http://code.google.com/p/padronelectoralcr/) el cual fue implementado con Lucene+Swing+OpenCVS, en el marco de la CRJUG (http://www.crjug.org/), específicamente se dará una introducción a Apache Lucene e indexación de datos con el mismo, así como la presentación del proyecto, llevado en colaboración con la comunidad de software libre de la Universidad de Costa Rica (http://softwarelibre.ucr.ac.cr/).
 
Así pues, los que deseen una introducción técnica a la indexación de datos con Lucene y así como una visión desde el punto de vista técnico del proyecto, puede llegarse el 11 de Agosto a la U Latina, a las 6:30 pm.


[+] info y el link para la inscripción (la misma es gratuita pero obligatoria):


http://jsanca.ticoblogger.com/2010/07/prox-crjug-11-agosto.html


Un saludo a toda la comunidad,


 J
martes
jul272010

VisualVM 1.3

Está disponible la versión 1.3 de VisualVM, una herramienta opensource de profiling de aplicaciones Java. Una de las principales novedades de esta versión es que la herramienta reconocen los entornos de ejecución de Clojure, Groovy, JRuby, Jython y Scala. De este modo puede ayudar al desarrollador a centrar su atención sobre los procesos que realmente le interesan (los de su código), y no los relativos al entorno de ejecución.

 

También están la posibilidad de realizar heap dumps de aplicaciones remotas, y no sólo locales como hasta ahora, y un plugin que permite inspeccionar los staks de los threads. Otra novedad destacable es el framework Tracer, que permite desarrollar plugins que recojan distintos tipos de métricas de la aplicación que se está ejecutando y mostrar su evolución a lo largo del tiempo.