Pentaho Data Integration 4.2rc1 no Ubuntu 11.04 32bits
Para quem tiver problemas para executar o Pentaho Data Integration (Kettle) no Ubuntu 11.04 32bits (talvez também no 64bits) segue abaixo dica de ajustes que devem ser feitos no script de inicialização "spoon.sh":
- Ajustar o LIBPATH, removendo o $BASEDIR dali, que só está atrapalhando;
- Acrescentar o "cd $BASEDIR" antes da chamada de execução do Kettle (no final do arquivo, antes da chamada da aplicação);
- Usar o pacote java da Oracle, ao invés do OpenJDK (mais detalhes aqui);
Com os passos acima o PDI já vai abrir, porém, possivelmente haverá problemas com o "drag and drop" ao arrastar componentes para compor uma transformação. Para ajustar isso será necessário desativar a nova barra de rolagem do Ubuntu, pois ela que causa este conflito com o Java. Para isso basta rodar este comando no terminal (como root):
echo "export LIBOVERLAY_SCROLLBAR=0" > /etc/X11/Xsession.d/80overlayscrollbars
Para essa configuração ser ativada é necessário reiniciar o X ou o computador. O efeito colateral disso é que a barra de rolagem do Ubuntu não terá mais aquela nova aparência, mas sim exibirá a rolagem tradicional. Mais detalhes sobre isso podem ser vistos aqui.
Outra possibilidade ainda é a de removermos a integração de menus com a barra superior do Ubuntu. Para isso basta adicionar a seguinte linha um pouco antes da chamada da aplicação dentro do script "spoon.sh":
unset UBUNTU_MENUPROXY
unset UBUNTU_MENUPROXY
Mais detalhes aqui.
Com as alterações acima o Kettle estará em condições de uso no Ubuntu. Abaixo estou postando o arquivo com as alterações destacadas e comentadas.
#!/bin/sh
MOZILLA_FIVE_HOME=$(find /usr/lib -maxdepth 1 -name xulrunner-[0-9]* | head -1)
LD_LIBRARY_PATH=${MOZILLA_FIVE_HOME}:${LD_LIBRARY_PATH}
export MOZILLA_FIVE_HOME LD_LIBRARY_PATH
export GDK_NATIVE_WINDOWS=1
BASEDIR=`dirname $0`
cd $BASEDIR
DIR=`pwd`
cd -
cd $DIR
. "$DIR/set-pentaho-env.sh"
setPentahoEnv
LIBPATH="NONE"
STARTUP="-jar launcher/launcher.jar"
case `uname -s` in
Linux)
#Retirado o $BASEDIR das definições do LIBPATH
ARCH=`uname -m`
case $ARCH in
x86_64)
if $($_PENTAHO_JAVA -version 2>&1 | grep "64-Bit" > /dev/null )
then
LIBPATH=../libswt/linux/x86_64/
else
LIBPATH=../libswt/linux/x86/
fi
;;
i[3-6]86)
LIBPATH=../libswt/linux/x86/
;;
ppc)
LIBPATH=../libswt/linux/ppc/
;;
*)
echo "I'm sorry, this Linux platform [$ARCH] is not yet supported!"
exit
;;
esac
;;
HP-UX)
LIBPATH=$BASEDIR/../libswt/hpux/
;;
CYGWIN*)
./Spoon.bat
exit
;;
*)
echo Spoon is not supported on this hosttype : `uname -s`
exit
;;
esac
export LIBPATH
if [ -z "$PENTAHO_DI_JAVA_OPTIONS" ]; then
PENTAHO_DI_JAVA_OPTIONS="-Xmx768m"
fi
OPT="$OPT $PENTAHO_DI_JAVA_OPTIONS -Djava.library.path=$LIBPATH -DKETTLE_HOME=$KETTLE_HOME -DKETTLE_REPOSITORY=$KETTLE_REPOSITORY -DKETTLE_USER=$KETTLE_USER -DKETTLE_PASSWORD=$KETTLE_PASSWORD -DKETTLE_PLUGIN_PACKAGES=$KETTLE_PLUGIN_PACKAGES -DKETTLE_LOG_SIZE_LIMIT=$KETTLE_LOG_SIZE_LIMIT"
#Acrescentado a linha abaixo para que entre na pasta onde está o spoon.sh antes de carregar.
#Isso evita o erro na carga do jar launcher/launcher.jar
cd $BASEDIR
#Descomente a linha abaixo se quiser desativar a integração de menus na barra da janela do Ubuntu.
#unset UBUNTU_MENUPROXY
"$_PENTAHO_JAVA" $OPT $STARTUP -lib $LIBPATH "${1+$@}"
Comentários
Os procedimentos citados neste artigo não são mais necessários na versão 4.2.1 do Kettle com o Ubuntu 11.10.