MobStac

viernes, 3 de mayo de 2013

Las aplicaciones en Java, otro recurso a tener en cuenta

Bueno lo de java es un decir porque ¿qué java ponemos?, si usamos el pcbsd tenemos dos pbis uno con el openjdk6 y otro con el openjdk7, se supone que puesto uno de estos ya cualquier aplicación que funcione en java mas o menos nos ha de funcionar como por ejemplo el aTunes, si queréis hacer las pruebas con este programa tenéis que haceros primero una copia del directorio .atunes/ de vuestra carpeta pues a cada versión de atunes que se pruebe se borra todo y si tenéis preferencias, listas, podcasts, radios, etc. se borrarán al empezar una nueva versión.



Normalmente con el mc lo de la copia de cualquier directorio es relativamente fácil pues entrando en el directorio que queramos hacer copia simplemente le damos al F2 para que salga un menu textual que normalmente se nos abrirá por 3 compress the current subdirectory (tar.gz) que si nos conformamos es darle al enter y ya está lo que necesitamos, si no es así podemos usar cualquiera de las otras opciones de compresión para el directorio en cuestión. Es simplemente ir hacia abajo, normalmente estarán las aplicaciones que nos ayudarán a hacer esa tarea. ;)

Hecho lo cual podemos ya empezar a probar con aplicaciones java, en nuestro caso el atunes, que haber, haylas aunque os advierto que aun existe la posibilidad de instalar por paquetillo o probar versiones, linux o windows, yo normalmente he probado con los xx.bin.tar.gz antes que con los installer.jar, pues estos son instaladores de la aplicación pero en java.

Con las bolas simplemente es abrirlas en un directorio y buscar el lanzador real de la aplicación si os habéis adecuado a la serie que vengo desarrollando hacemos pruebas alrededor del pbi de aTunes versión 2.1 que se encuentra en:

[ximo@pcbsd-6989] ~/Downloads% which atunes
/usr/home/ximo/bin/atunes

Y dice :"
 #!/bin/sh
PROGDIR="/usr/pbi/atunes-i386" ; export PROGDIR
PROGBIN="bin/atunes" ; export PROGBIN
PATH="${PROGDIR}/bin:${PROGDIR}/sbin:${PROGDIR}/kde4/bin:${PROGDIR}/libexec:$PATH"; export PATH

# Check and parse any ldconfig entries
LDCONFIGDIRS=""
if [ -d "${PROGDIR}/libdata/ldconfig" ]
then
  for i in `ls ${PROGDIR}/libdata/ldconfig 2>/dev/null`
  do
    while read TMP
    do
      echo $LDCONFIGDIRS | grep "${TMP}:" >/dev/null 2>/dev/null
      if [ "$?" != "0" ]
      then
        LDCONFIGDIRS="${TMP}:${LDCONFIGDIRS}"
      fi
    done < ${PROGDIR}/libdata/ldconfig/${i}
  done
fi

#Setup our LD_LIBRARY_PATH variable with all found lib dirs
LD_LIBRARY_PATH="${LDCONFIGDIRS}:${PROGDIR}/lib/:${PROGDIR}/kde4/lib:${PROGDIR}/lib/qt4"
LD_32_LIBRARY_PATH="${LDCONFIGDIRS}:${PROGDIR}/lib/:${PROGDIR}/kde4/lib:${PROGDIR}/lib/qt4"
export LD_LIBRARY_PATH LD_32_LIBRARY_PATH


${PROGDIR}/${PROGBIN}  "$@" "


Lo que para mi es justificar en demasía el PBI de esta aplicación con todas las cosas innecesarias que se suelen poner, estamos en un programa de java y las dependencias son solo con el java, pero todo lo otro es mas que redundante, si hacemos un du en /usr/pbi/atunes-i386 nos saldrá algo como esto: 550128    /usr/pbi/atunes-i386/ . Que nos indica una gordura excesiva con dependencias innecesarias que realmente no existen. Mirar el directorio /usr/pbi/atunes-i386/bin por ejemplo y lo entenderéis o de cualquier otro pbi.

Así pues normalmente el escript de arranque de la aplicación que encontramos en la bola de cualquier versión el que encontraremos en /usr/pbi/atunes-i386/bin/atunes    viene a ser :






"#!/bin/sh

cd /usr/pbi/atunes-i386/share/atunes
JAVA_VERSION="1.6+" exec /usr/pbi/atunes-i386/bin/java -Djava.library.path=./ \
             -Xms128m -Xmx1024m -cp aTunes.jar:lib/* net.sourceforge.atunes.Main "$@"
"

 Así que simplemente hacemos una copia y la pasamos a nuestro directorio y la modificamos un poco, yo ya he dicho que tengo un directorio llamado P/ en el que pongo los programas de windows, prefiero ponerlos o copiarlos enteros y a veces enlazo o paso el contenido de la bola a estudiar u otras aplicaciones tipo linux, como es este caso.

Así que en /usr/home/ximo/P/aTunes he puesto el contenido de la bola de atunes.

Y he editado la copia del atunes del pbi. A esto:

"#!/bin/sh

cd /usr/home/ximo/P/aTunes
JAVA_VERSION="1.6+" exec /usr/pbi/openjdk7-i386/bin/java -Djava.library.path=./ \
             -Xms128m -Xmx1024m -cp aTunes.jar:lib/* net.sourceforge.atunes.Main "$@" "


Que como véis he puesto o instalado el pbi del openjdk7 para hacer funcionar las nuevas versiones del aTunes que encontraréis en http://sourceforge.net/projects/atunes/files/atunes/   y que vosotros si probaís tenéis que adecuar a lo vuestro.

Hecho lo cual desde una term hacemos ./atunes, al ser una copia de un /bin ya tiene permisos de ejecución y milagrosamente se nos despliega la aplicación atunes yo he hecho ir hasta la 3.0.9 pero sigo sin poder usar las preferencias sin hacer mas trampas de las debidas, las trampas para que las ventanas de preferencias no se hagan mas grandes de lo debido es copiar los archivos que no existen y los nuevos especificos de la versión a probar en una copia del atunes 2.01, cosa que si fácil es laboriosa y ocupa espacio. :) Ximo







No hay comentarios: