Archive for the ‘Java’ Category

Instalar JRE en CentOS 6

agosto 9, 2011

CentOS 6 viene con Firefox 3.6.9, para instalar el plugin de Java en dicho navegador en esta versión de CentOS hay que hacer lo siguiente (básicamente son los pasos que indica la página de Java, sólo que ahi tienen algunos errores, al menos al momento en que estoy escribiendo este post):

Descargar de la página de Java el paquete (archivo RPM)

Cerrar Firefox

Desde la terminal, cambiarse al usuario root

Ir al directorio en donde se desea hacer la instalación y poner ahi el archivo RPM; en mi caso fue el archivo jre-6u26-linux-i586.rpm.bin y lo instalé en /usr/local

Agregar permisos de ejecución al archivo RPM tecleando chmod a+x jre-6u26-linux-i586.rpm.bin

Ejecutar el archivo tecleando ./jre-6u26-linux-i586.rpm.bin

Ir al directorio /usr/lib/firefox-3.6 y crear el directorio plugins

cd /usr/lib/firefox-3.6

mkdir plugins

Ir al directorio plugins y crear ahi un enlace simbólico al archivo libnpjp2.so de la instalación de Java

cd plugins

ln -s /usr/java/jre1.6.0_26/lib/i386/libnpjp2.so

Para comprobar la instalación, abrir Firefox y en la barra de direcciones teclear about:plugins (se muestran los plguins que están instalados y debe aparecer entre ellos el de Java).

Eliminar caracteres de una cadena en Java

junio 12, 2010

La siguiente función recibe dos parámetros de tipo String. La primer cadena es la cadena de la cual queremos remover cualquier caracter que se encuentre en la segunda cadena.

public String EliminaCaracteres(String s_cadena, String s_caracteres)
{
  String nueva_cadena = "";
  Character caracter = null;
  boolean valido = true;

  /* Va recorriendo la cadena s_cadena y copia a la cadena que va a regresar,
     sólo los caracteres que no estén en la cadena s_caracteres */
  for (int i=0; i<s_cadena.length(); i++)
      {
       valido = true;
       for (int j=0; j<s_caracteres.length(); j++)
           {
            caracter = s_caracteres.charAt(j);

            if (s_cadena.charAt(i) == caracter)
               {
                valido = false;
                break;
               }
           }
       if (valido)
           nueva_cadena += s_cadena.charAt(i);
      }

  return nueva_cadena;
}
public String EliminaCaracteres(String s_cadena, String s_caracteres)
{
String nueva_cadena = “”;
Character caracter = null;
boolean valido = true;

/* Va recorriendo la cadena s_cadena y copia a la cadena que va a regresar,
sólo los caracteres que no estén en la cadena s_caracteres */
for (int i=0; i<s_cadena.length(); i++)
{
valido = true;
for (int j=0; j<s_caracteres.length(); j++)
{
caracter = s_caracteres.charAt(j);

if (s_cadena.charAt(i) == caracter)
{
valido = false;
break;
}
}
if (valido)
nueva_cadena += s_cadena.charAt(i);
}

return nueva_cadena;
}

Error java.lang.NoClassDefFoundError en Debian Etch

febrero 11, 2009

En una PC con Windows instalé NetBeans 6.5 y desarrollé una aplicación GUI muy sencilla en java.

Después intenté ejecutar esta aplicación en una PC con Debian Etch escribiendo desde consola:

java -jar nombre_aplicacion.jar

y aparecia el siguiente error:

Exception in thread “main” java.lang.NoClassDefFoundError: javax/swing/GroupLayo
ut$Group

Este error se debe a que está instalada la versión 5.0 del JRE (Java Runtime Environment) de Sun que viene en el paquete sun-java5-jre de Debian Etch y NetBeans 6.5 utiliza una versión más nueva.

La version 6 del JRE viene en el paquete sun-java6-jre que se encuentra en el repositorio de backports para Debian Etch http://packages.debian.org/etch-backports/sun-java6-jre

En mi post sobre instalar firebird 2.0 en Debian Etch explico como agregar este repositorio.

Ya que tenemos agregado el repositorio a nuestro archivo de fuentes (/etc/apt/sources.list) y hecho el respectivo apt-get update procedemos a desinstalar la versión 5.o del JRE

Para ver que paquetes de java tenemos instalados ejecutamos

dpkg -l |grep sun-java

En mi caso aparecen los siguientes paquetes

ii sun-java5-bin 1.5.0-14-1etch1 Sun Java(TM) Runtime Environment (JRE) 5.0 (
ii sun-java5-demo 1.5.0-14-1etch1 Sun Java(TM) Development Kit (JDK) 5.0 demos
ii sun-java5-jdk 1.5.0-14-1etch1 Sun Java(TM) Development Kit (JDK) 5.0
ii sun-java5-jre 1.5.0-14-1etch1 Sun Java(TM) Runtime Environment (JRE) 5.0 (

Esto es porque además del JRE también tengo instalado el kit para desarolladores JDK (Java Development Kit).

Para eliminar los paquetes ejecutamos

sudo apt-get –purge remove sun-java5-bin sun-java5-demo sun-java5-jdk sun-java5-jre

Leyendo lista de paquetes… Hecho
Creando árbol de dependencias… Hecho
Los siguientes paquetes se ELIMINARÁN:
sun-java5-bin* sun-java5-demo* sun-java5-jdk* sun-java5-jre*
0 actualizados, 0 se instalarán, 4 para eliminar y 38 no actualizados.
Necesito descargar 0B de archivos.
Se liberarán 114MB después de desempaquetar.
¿Desea continuar [S/n]?

Decimos que si y la desinstalación termina

La instalación de java en Debian normalmente crea algunos enlaces simbólicos, para ver si existen enlaces simbólicos para java ejecutamos

sudo update-alternatives –display java

En mi caso muestra
No hay alternativas para java.

Pero si se hubieran encontrado enlaces simbólicos habría que eliminarlos ejecutando

sudo update-alternatives –remove-all java

Después ejecutamos

sudo update-alternatives –display javac

En mi caso muestra
javac – el estado es manual.
el enlace apunta actualmente a /usr/lib/jvm/java-1.5.0-sun/bin/javac
No hay ninguna versión disponible.

Como en el caso anterior, para eliminar todos los enlaces simbólicos ejectuamos

sudo update-alternatives –remove-all javac

Nota: Los siguientes enlaces son útiles para conocer más sobre la administración de paquetes en Debian (instalación, desinstalación, saber el estatus de un paquete, etc.)

http://www.debian.org/doc/manuals/apt-howto/ch-search.es.html
http://www.debian.org/doc/manuals/quick-reference/ch-package.es.html

Ahora si procedemos a instalar el JRE 6 de Sun para lo cual ejecutamos

sudo apt-get install sun-java6-jre

Leyendo lista de paquetes… Hecho
Creando árbol de dependencias… Hecho
Se instalarán los siguientes paquetes extras:
sun-java6-bin
Paquetes sugeridos:
binfmt-support sun-java6-plugin ia32-sun-java6-plugin sun-java6-fonts ttf-baekmuk ttf-unfonts ttf-unfonts-core ttf-kochi-gothic ttf-sazanami-gothic
ttf-kochi-mincho ttf-sazanami-mincho ttf-arphic-uming
Paquetes recomendados
libnss-mdns gsfonts-x11
Se instalarán los siguientes paquetes NUEVOS:
sun-java6-bin sun-java6-jre
0 actualizados, 2 se instalarán, 0 para eliminar y 38 no actualizados.
Necesito descargar 33.6MB de archivos.
Se utilizarán 96.4MB de espacio de disco adicional después de desempaquetar.
¿Desea continuar [S/n]?

Decimos que si y aparece la siguiente pantalla

java6

Seleccionamos aceptar y ahora aparece la siguiente pantalla

java6_2

Después de aceptar los términos de la licencia la instalación termina

Seleccionando el paquete sun-java6-bin previamente no seleccionado.
Desempaquetando sun-java6-bin (de …/sun-java6-bin_6-07-3~bpo40+1_i386.deb) …
sun-dlj-v1-1 license has already been accepted
Configurando sun-java6-bin (6-07-3~bpo40+1) …

Configurando sun-java6-jre (6-07-3~bpo40+1) …

Si ejecutamos

dpkg -l |grep sun-java

Ahora nos muestra

ii sun-java6-bin 6-07-3~bpo40+1 Sun Java(TM) Runtime Environment (JRE) 6 (ar
ii sun-java6-jre 6-07-3~bpo40+1 Sun Java(TM) Runtime Environment (JRE) 6 (ar

Ahora ya podemos ejecutar nuestra aplicacion java que contiene una interfaz gráfica de usuario (GUI) sin problemas.


Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.