Problemas ao obter o JPackage para ver o Sun JVM no CentOS5

1

Eu estou procurando o Tomcat6 no CentOS 5 de uma maneira totalmente baseada em RPM. O JPackage parece ser uma ótima opção para isso, então adicionei o repositório e agora estou tentando fazer com que ele funcione.

As instruções dizem para instalar o download do JDK baseado em RPM da Sun, então eu fiz isso. Então as instruções dizem para instalar a biblioteca -compat apropriada do JPackage. Neste ponto, recebo o seguinte erro:

[root@localhost bart]# rpm -ivh java-1.6.0-sun-compat-1.6.0.03-1jpp.i586.rpm 
error: Failed dependencies:
    jdk = 2000:1.6.0_03-fcs is needed by java-1.6.0-sun-compat-1.6.0.03-1jpp.i586
    jpackage-utils >= 0:1.7.3 is needed by java-1.6.0-sun-compat-1.6.0.03-1jpp.i586
[root@localhost bart]#

O que me confunde em particular é que parece estar procurando a versão fedora da Sun JVM. As instruções do JPAckage avisam que é vital usar o download baseado em RPM, então eu tenho certeza de fazer isso.

Caso isso aconteça, aqui está minha versão de Java:

[root@localhost bart]# java -version
java version "1.6.0_18"
Java(TM) SE Runtime Environment (build 1.6.0_18-b07)
Java HotSpot(TM) Server VM (build 16.0-b13, mixed mode)
[root@localhost bart]#

Alguma idéia do que eu perdi ou fiz de errado?

Obrigado,

Bart.

    
por Bart B 04.02.2010 / 01:25

3 respostas

3

Você está tentando instalar uma biblioteca de compatibilidade para uma versão diferente do JDK do que instalou a partir da Sun.

Você está tentando instalar o compat-1.6.0.03 que corresponderia ao JDK 1.6.0_03.

Sua versão do java é 1.6.0_18. Você pode obter 1.6.0_03 aqui

Parece que eles não atualizaram as bibliotecas compatíveis desde o U3 (1.6.0_03)

Esta gema é um pouco escondida em suas instruções (ênfase minha):

Make sure to match the version of the -compat package to the SDK you've installed in the first step. The -compat RPM requires that the RPM self-extracting file from Sun be used in the previous step, not the plain (non-RPM) one.

Sugiro que você desinstale o jdk 1.6.0_18 e instale o jdk 1.6.0_03. Isso deve te levar aonde você precisa ir.

    
por 09.02.2010 / 01:46
1

Além da resposta da Zypher de que você precisa do correto -compat rpm correspondente à sua JVM instalada, parece que o rpm está lembrando que você também precisa instalar o rpm jpackage-utils de uma versão apropriada.

Também gostaria de avisar que o scriptlet postinstall às vezes falha ao executar corretamente na tentativa de configurar alternativas (acredito que haja um erro de digitação). Você deve conseguir extrair o scriptlet via rpm -q --scripts <rpm package name> , colocar o conteúdo postinstall em um arquivo .sh, corrigir os erros de digitação e, em seguida, executar o script fixo via sh mypostinstall.sh para configurar corretamente as alternativas para java e javac.

    
por 09.02.2010 / 17:58
0

Eu simplesmente amo a ironia. Tendo desistido do JPackage, fui procurar boas instruções para instalar o Tomcat6 manualmente e executá-lo como um usuário sem privilégios e ter bons scripts de inicialização. O que eu encontrei em vez disso? A solução para instalar o Tomcat6 no Centos5 com o JPackage!

A chave é essa biblioteca de terceiros que corrige o problema sempre estranho que o CentOS 5 tem com o JPackage: link

Para completar, eu encontrei as instruções aqui: link

Bart.

    
por 15.02.2010 / 21:45