Nota: Antes de utilizar estas informações e o produto suportado, certifique-se de ter lido as informações gerais em Avisos.
Esta edição do README é referente ao IBM Runtime Environment para Linux, Java 2 Technology Edition, Versão 1.3.1, versão de 32-bit, e a todos os releases e modificações subseqüentes até que indicado de outra forma em novas edições.
(c) Copyright Sun Microsystems, Inc. 1997, 2001, 901 San Antonio Rd., Palo Alto, CA 94303 USA. Todos os direitos reservados.
(c) Copyright International Business Machines Corporation, 1999, 2002. Todos os direitos reservados.
Direitos Restritos para Usuários do Governo dos Estados Unidos -- Uso, duplicação e divulgação restritos pelo GSA ADP Schedule Contract com a IBM Corporation.
Este arquivo README fornece informações sobre o pacote Runtime Environment para Linux fornecido pela IBM(R) Developer Kit para Linux, Java(TM) 2 Technology Edition, Versão 1.3.1, versão de 32-bits(Developer Kit para Linux).
O Runtime Environment permite executar apenas os aplicativos Java. Se você desejar gravar e depois executar os aplicativos Java, será necessário instalar o Developer Kit para Linux. Se você já tiver o Developer Kit para Linux instalado, não será necessário o Runtime Environment, pois este é um subconjunto do Developer Kit.
Para obter uma lista das distribuições nas quais o Developer Kit para Linux foi testado, consulte:
http://www-106.ibm.com/developerworks/java/jdk/linux/tested.html
O produto Runtime Environment para Linux contém o subconjunto de classes necessárias para criar um ambiente Java de tempo de execução e para executar programas Java. Ele também contém a Máquina Virtual Java (JVM), classes Java e arquivos de suporte. O pacote Runtime Environment para Linux contém apenas um subconjunto das classes encontradas no produto Java Developer Kit.
Arquivos incluídos no pacote Runtime Environment para Linux
O Runtime Environment para Linux inclui arquivos .so não depuráveis além de arquivos de classe necessários para o suporte de um programa em tempo de execução. O Runtime Environment para Linux não inclui ferramentas de desenvolvimento, como o appletviewer ou o javac, ou classes que pertençam apenas a um sistema de desenvolvimento.
Além disso, os pacotes JAAS (Java Authentication and Authorization Service) e Java Communications API (application programming interface) são fornecidos para uso com o produto Runtime Environment para Linux.
O arquivo LICENSE_xx.html contém o contrato de licença para o software Runtime Environment para Linux. (xx é uma abreviação para o idioma).
Para exibir ou imprimir o contrato de licença, abra o arquivo em um navegador da Web.
O compilador JIT (just-in-time) (libjitc.so) gera dinamicamente código de máquina para seqüências usadas freqüentemente em aplicativos ou applet Java durante a sua execução.
O Runtime Environment para Linux inclui o compilador JIT (libjitc.so), que está ativado por padrão. É possível desativar o JIT para ajudar no isolamento de um problema com um aplicativo Java, um applet ou o próprio compilador. Para desativar o JIT, digite o seguinte em um prompt de shell:
export JAVA_COMPILER=NONE
Para ativar o JIT, digite o seguinte em um prompt do shell:
export JAVA_COMPILER=libjitc.so
Para verificar se o compilador JIT está ativado ou não, digite o seguinte em um prompt do shell:
java -version
Se o compilador JIT estiver sendo usado, uma mensagem será exibida contendo a seguinte mensagem:
JIT enabled: jitc
Se o compilador JIT não estiver sendo usado, a seguinte mensagem será exibida:
JIT disabled
A Native Method Interface e a Java Native
Interface
A IBM não suporta a Native Method Interface neste release. Não use esta interface em seus aplicativos.
A JNI (Java Native Interface) está incluída no Runtime Environment. Para obter informações sobre o uso do JNI, consulte o site da Web da Sun:
Configurando o Runtime Environment para Linux
Após a instalação do Runtime Environment para Linux, edite seu script de shell e inclua os seguintes diretórios na instrução PATH:
Se tiver instalado o Runtime Environment para Linux
diferente de
Instalando e configurando o Plug-in Java
O Plug-in Java é um plug-in de navegador da Web para usar com o Netscape Communicator para Linux. Se você usar o Plug-in Java, poderá ignorar a Java Virtual Machine de seu navegador da Web e em substituição, usar um JRE (Java Runtime Environment) para executar applets ou beans no navegador.
Para instalar e configurar um Plug-in Java:
Nota: Na primeira vez em que você iniciar o Netscape depois de fazer o link do arquivo javaplugin.so para o diretório netscape/plugins, o Netscape será imediatamente encerrado.
(Se você tiver iniciado o Netscape pela linha de comandos, uma mensagem de
Erro de barramento
será exibida).
Você pode ignorar esta mensagem com segurança porque o Netscape não encontrará este erro após a primeira vez.
Java pode exibir todos os caracteres Unicode, mas a maioria das versões do Linux instalam apenas as fontes necessárias para mostrar seu idioma. Você pode fazer download de fontes da IBM que permitam visualizar o conjunto completo de caracteres Unicode. Estas fontes não estão incluídas no pacote Developer Kit para Linux por serem grandes e porque nem todos os usuários precisam delas. A IBM fornece duas fontes Unicode e cada delas é personalizada por país. Os usuários na China e na Coréia devem utilizar as versões específicas de seu país, e todos os outros devem utilizar a versão japonesa dessas fontes.
Você pode fazer download das fontes a partir do site da Web developerWorks em http://www.ibm.com/developer/java/. As descrições das fontes são fornecidas para ajudá-lo a decidir quais fontes devem ser transferidas através de download.
Para instalar uma fonte, coloque o arquivo no diretório /opt/IBMJava2-ppc-131/jre/lib/fonts.
Se o download de fontes for feito em partes, será necessário reuni-las novamente em um arquivo para cada fonte. Para tal, certifique-se que as partes estejam no diretório /opt/IBMJava2-ppc-131/jre/lib/fonts e use o comando cat.
Por exemplo, se você fizer download da fonte Times New Roman WT J em partes, digite o seguinte comando para juntá-la:
cat tnrwt_j.t01 tnrwt_j.t02 tnrwt_j.t02 > tnrwt_j.ttf
Quando estiver instalando em um sistema Red Hat, para que o servidor de fontes encontre as fontes Java TrueType, execute:
Isso deve ser feito no momento da instalação e você deve ter o ID root
para executar o comando.
Se você pretende utilizar o servidor BEA Weblogic quando instalar os pacotes do Developer Kit para Linux desmarque a seleção da instalação JAAS opcional. O servidor BEA Weblogic contém sua própria implementação de JAAS.
Removendo o Runtime Environment para Linux
O processo utilizado para remover o produto Runtime Environment para Linux depende do tipo de pacote instalado, o pacote RPM ou o pacote TAR comprimido. Consulte Removendo a instalação do pacote RPM ou Removendo a instalação do pacote TAR compactado para obter instruções.
Para remover o produto Runtime Environment para Linux instalado através do pacote RPM:
rpm -qa | grep IBMO nome do pacote é exibido.
rpm -e pkgnameem que
nomePacote
representa o nome do pacote exibido.Removendo o pacote TAR compactado
Para remover o produto Runtime Environment para Linux instalado através do pacote TAR compactado:
Invocando o Java Runtime Interpreter
O produto Runtime Environment para Linux pode ser invocado a partir de um prompt de shell, através da ferramenta java.
java [-options] classname <args>
O argumento classname
é o nome do arquivo de classe a ser
executado. Os argumentos a serem passados para a classe
precisam ser colocados após classname
na linha de
comandos.
java -jar [-options] jarfile <args>
O argumento jarfile
é o nome do arquivo jar a ser
executado. Os argumentos a serem passados para o arquivo jar
precisam ser colocados após jarfile
na linha de
comandos.
As opções para a ferramenta java são as seguintes:
As opções -X não são padrão e estão sujeitas a modificações sem aviso prévio.
A propriedade do sistema ibm.jvm.bootclasspath pode ser definida com a opção -D descrita na seção Chamando o Java Runtime Interpreter.
O valor desta propriedade é utilizado como um caminho adicional de pesquisa, inserido entre qualquer valor definido por
Obtendo o número de versão e de build IBM
Para obter o número de versão e build IBM, digite este comando em um prompt de shell:
java -version
Determinadas distribuições Linux - RedHat, por exemplo - ativam um recurso GLIBC chamado 'pilhas flutuantes'. Devido às limitações kernel do Linux, o JVM não será executado em hardware SMP com pilhas flutuantes ativadas se o nível de kernel for menor que 2.4.10. Neste ambiente, as pilhas flutuantes devem ser desativadas antes do JVM, ou antes que qualquer aplicativo que inicie o JVM seja iniciado. No RedHat, as pilhas flutuantes são desativadas com a exportação de uma variável de ambiente, assim como:
Em um sistema Linux sem pilhas flutuantes, independentemente do que for definido para -Xss, é fornecido um tamanho mínimo de pilha nativa de 256KB para cada encadeamento. Em um sistema Linux com pilhas flutuantes, os valores -Xss são respeitados. Sendo assim, se você estiver migrando de um sistema Linux sem pilhas flutuantes, deverá assegurar que todos os valores de -Xss sejam suficientemente grandes e que não estejam dependendo de um mínimo de 256KB.
Alternando o método de entrada para os idiomas DBCS
Em sistemas de conjunto de caracteres de byte duplo (DBCS), se você deseja alternar o método de entrada, é necessário definir uma variável de ambiente que represente o keycode usado para alternar. Opcionalmente, é possível definir outra variável de ambiente que represente os modificadores do keycode.
Para especificar o keycode a ser utilizado para comutação, defina a variável de ambiente IBMJAVA_INPUTMETHOD_SWITCHKEY para uma definição keycode na classe java.awt.event.KeyEvent, por exemplo, VK_F4.
Opcionalmente, especifique os modificadores do código chave. Para especificar modificadores do keycode, defina a variável de ambiente IBMJAVA_INPUTMETHOD_SWITCHKEY_MODIFIERS para alguma combinação das três seguintes definições de máscaras na classe java.awt.event.InputEvent:
Separe as máscaras por vírgulas.
Por exemplo, a variável de ambiente IBMJAVA_INPUTMETHOD_SWITCHKEY_MODIFIERS pode ser definida para ALT_MASK, CTRL_MASK.
Durante a inicialização de Java, as duas variáveis de ambiente são armazenadas.
Para garantir que as variáveis de ambiente foram especificadas corretamente, pressione uma tecla e compare o resultado com a combinação de teclas especificada. Se forem correspondentes, um menu Java popup com métodos de entrada selecionáveis é exibido.
Este Developer Kit não inclui fontes Devanagari (Devamt.ttf e Devamtb.ttf) no diretório jre/lib/fonts. Em vez disso, quando apropriado, Java utiliza as fontes Monotype Unicode (Times New Roman WorldType e Sans Monospace WorldType) incluídas com a plataforma IBM ou com o produto de software IBM de suporte a fontes Devanagari (Hindi).
A seguinte página da Web da Sun contém um exemplo "Hello World" do qual pode ser feito o download. O exemplo mostra como criar um aplicativo Java simples que é executado e empacotado com o produto Runtime Environment para Linux. O exemplo está no site da Web da Sun:
O exemplo mostra como fazer uma transição simples e transparente do desenvolvimento de um aplicativo com o Developer Kit para Linux, para implementá-lo em um programa mais leve, o produto Runtime Environment para Linux.
Instalando seu aplicativo em um sistema de usuário
Depois de desenvolver seu produto e ficar pronto para o envio, você precisa instalá-lo em um sistema de usuário individual, configurar o sistema do usuário para que suporte seu software e configurar o ambiente runtime.
Se você utilizar o Runtime Environment para Linux, deverá assegurar que o procedimento de instalação não sobreponha uma instalação já existente (a menos que o Runtime Environment para Linux seja uma versão anterior).
Para redistribuir o Runtime Environment para Linux, você pode instalá-lo em seu próprio sistema, e em seguida copiar os arquivos requeridos do Runtime Environment para o seu conjunto de instalação. Se escolher esta abordagem, você deverá incluir todos os arquivos fornecidos com o Runtime Environment para Linux. O software Runtime Environment para Linux só poderá ser redistribuído se todos os arquivos estiverem incluídos. De fato, quando você envia seu aplicativo, ele tem sua própria cópia do Runtime Environment para Linux.
Para obter informações específicas sobre os arquivos que devem ser redistribuídos, consulte o contrato de licença que acompanha esse produto.
O IBM Runtime Environment para Linux, Java 2 Technology Edition, V1.3.1 apresenta a opção de tempo de execução JVM -Xgcpolicy para especificar a política de coleta de lixo.
-Xgcpolicy tem dois valores, optthruput (o padrão) e optavgpause. A opção controla o comportamento do coletor de lixo, efetuando trocas entre o rendimento do aplicativo e todo o sistema e os tempos de pausa causados pela coleta de lixo.
O formato da opção e de seus valores é:
-Xgcpolicy:optthrupute
-Xgcpolicy:optavgpause
Quando a tentativa de um aplicativo para criar um objeto não pode ser imediatamente satisfeita com o espaço disponível no heap, o coletor de lixo é responsável pela identificação de objetos sem referência (lixo), excluindo-os, e retornando o heap a um estado no qual as solicitações de alocação imediatas e subseqüentes podem ser rapidamente satisfeitas. Tais ciclos de coleta de lixo apresentam pausas inesperadas ocasionais na execução do código do aplicativo. À medida que os aplicativos crescem em tamanho e complexidade e os heaps se tornam correspondentemente maiores, este tempo de pausa de coleta de lixo tende a crescer em tamanho e significância. O valor padrão da coleta de lixo, optthruput, aumenta extremamente o rendimento dos aplicativos, mas ao custo dessas pausas ocasionais, as quais podem variar de alguns milissegundos a vários segundos, dependendo do tamanho do heap e da quantidade de lixo.
O valor optavgpause reduz substancialmente o tempo gasto nessas pausas de coleta de lixo, como também reduz o efeito do aumento de tamanho do heap no comprimento da pausa da coleta de lixo. Isso é particularmente relevante em configurações com grandes heaps. (Um heap é considerado grande quando tiver no mínimo 1GB). Os tempos de pausa são reduzidos com a sobreposição das atividades de coleta de lixo com a execução normal do programa. Esta sobreposição resulta em uma pequena redução do rendimento do aplicativo.
Se o heap Java ficar quase cheio, e houver pouco lixo a ser movido, as solicitações de novos objetos podem não ser rapidamente satisfeitas porque não há espaço disponível de imediato. Se o heap for operado próximo à sua capacidade total, o desempenho do aplicativo pode diminuir independentemente da opção acima que for utilizada, e se os pedidos de aumento do espaço de heap continuarem a ser feitos, o aplicativo receberá uma mensagem de estouro de memória, o que resultará na finalização da JVM se a exceção não for capturada e tratada. Nessas situações, recomenda-se aumentar o tamanho do heap com a opção -Xmx ou reduzir o número de objetos de aplicativos em uso.
Para obter informações sobre o ajuste do tamanho do heap e os efeitos da coleta de lixo no desempenho do aplicativo, consulte:
Documentação do Runtime Environment para Linux
A IBM fornece a seguinte documentação runtime:
export LC_ALL="POSIX"
O número máximo de threads disponíveis é determinado, no mínimo, pelo seguinte:
No entanto, é possível ficar sem memória virtual antes de atingir o número máximo de threads.
No Sistema Linux X Window, o mapa de teclas está definido para: 64 0xffe9 (Alt_L) 0xffe7 (Meta_L) e 113 0xffea (Alt_R) 0xffe8 (Meta_R). Para verificar isto, digite este comando em um prompt de shell:
xmodmap -pk
Este é o motivo pelo qual o produto Runtime Environment para Linux considera que a tecla Meta esteja sendo pressionada juntamente com Alt. Como alternativa, é possível remover o mapeamento de Meta_x, digitando o seguinte em um prompt do shell:
xmodmap -e "keysym Alt_L = Alt_L" -e "keysym Alt_R = Alt_R"
Nota: Esta alternativa pode afetar outros aplicativos X Windows executados na mesma tela, se utilizarem a tecla Meta que foi removida.
fs
seja preservado em todas as chamadas JNI.
A Java Virtual Machine falhará se o fs
não for preservado.
Informações para usuários do Japão
Se estiver utilizando o OpenLinux e-Server 2.3, versão Japonesa, você deverá redefinir algumas variáveis de ambiente, conforme indicado a seguir:
export CLASSPATH= export JAVA_HOME=
Se você estiver utilizando os sistemas Red Hat Linux 6.2, versão japonesa, ou OpenLinux e-Server 2.3, versão japonesa, os caracteres Katakana de meia-largura podem não ser exibidos corretamente. Isto ocorre devido à falta de dados de fontes para esses caracteres. Se isto ocorrer, faça download das fontes IBM TrueType. Os caracteres Katakana de meia-largura poderão então ser exibidos em qualquer componente, exceto nos Componentes do AWT (Abstract Windows Toolkit).
Se você estiver executando um applet Java utilizando o Plug-in Java com o Netscape Communicator e passar uma cadeia japonesa como um valor de parâmetro, o valor de parâmetro não será passado corretamente.
No sistema TurboLinux 6.0J Workstation, você poderá receber uma mensagem de erro referente à biblioteca libnsfix-ja.so ao utilizar o Netscape Communicator.
Para corrigir o problema, renomeie o arquivo /usr/lib/netscape/libnsfix-ja.so. O novo nome de arquivo deve ser:
Nas versões japonesas do Linux, é possível utilizar métodos de entrada japonês tais como Canna, ATOK12 SE, Wnn4 ou Wnn6. Utilize as seções a seguir para evitar problemas ao utilizar métodos de entrada japoneses.
Para todos os usuários do IME (input method editor)
Para colocar outra janela no topo, execute uma destas ações:
Usuários Canna
Se você estiver utilizando o método de entrada Canna com o servidor de métodos de entrada kinput2, parte do retorno visual do método de entrada não ficará visível enquanto você estiver no modo de entrada KIGOU. Para evitar esse problema, mova o foco para a janela cliente depois que a janela Auxiliary Control for aberta.
Usuários ATOK12 SE
Usuários Wnn4
Se estiver utilizando Wnn4, a tecla Enter não cria uma nova linha ou joga o texto para o início da linha seguinte enquanto o IME (Input Method Editor) estiver ativado. Para criar uma nova linha ou jogar o texto para a próxima linha, desative o IME.
Usuários Wnn6
O servidor do Método de Entrada xwnmo não é suportado. Utilize kinput2 como o servidor do Método de Entrada.
Usuários Wnn4, Wnn6 ou Canna
Se estiver utilizando kinput2 como o servidor de Método de Entrada, mão minimize ou maximize a janela Java na qual a janela de pesquisa do kinput2 é exibida.
Estas informações foram desenvolvidas para produtos e serviços oferecidos nos Estados Unidos.
A IBM pode não oferecer em outros países os produtos, serviços ou recursos apresentados neste documento. Para obter informações sobre os produtos e serviços atualmente disponíveis em sua área, consulte um representante IBM de sua localidade. Qualquer referência a um produto, programa ou serviço IBM não significa que apenas produtos, programas ou serviços IBM possam ser utilizados. Qualquer produto, programa ou serviço funcionalmente equivalente, que não infrinja nenhum direito de propriedade intelectual da IBM, poderá ser utilizado em substituição a este produto, programa ou serviço. A avaliação e verificação da operação de qualquer produto, programa ou serviço não-IBM são de inteira responsabilidade do usuário.
A IBM pode ter patentes ou solicitações de patentes pendentes relativas a assuntos tratados nesta publicação. O fornecimento deste documento não lhe garante direito algum sobre tais patentes. Consultas sobre licenças devem ser enviadas, por escrito, para:
O parágrafo a seguir não se aplica a nenhum país em que tais disposições não estejam de acordo com a legislação local:
A INTERNATIONAL BUSINESS MACHINES CORPORATION FORNECE ESTA PUBLICAÇÃO "NO ESTADO EM QUE SE ENCONTRA", SEM GARANTIA DE NENHUM TIPO, EXPRESSA OU IMPLÍCITA, INCLUINDO, MAS NÃO SE LIMITANDO ÀS GARANTIAS IMPLÍCITAS DE MERCADO OU ADEQUAÇÃO A UM DETERMINADO PROPÓSITO. Alguns países não permitem a exclusão de garantias explícitas ou implícitas em certas transações; portanto, esta disposição pode não se aplicar a você.
Estas informações podem conter imprecisões técnicas ou erros tipográficos. Periodicamente, são feitas alterações nas informações aqui contidas; tais alterações serão incorporadas em futuras edições desta publicação. A IBM pode fazer aperfeiçoamentos e/ou alterações nos produtos e/ou programas descritos nesta publicação, a qualquer momento, sem aviso prévio.
Referências nesta publicação a sites não-IBM na Web são fornecidas apenas por conveniência e não representam de forma alguma um endosso a esses sites na Web. Os materiais contidos nesses sites da Web não fazem parte dos materiais deste produto IBM e a utilização desses sites da Web é de responsabilidade do usuário.
A IBM pode utilizar ou distribuir as informações recebidas da forma que julgar adequada, sem incorrer em obrigações para com você.
Os proprietários de licenças deste programa que desejarem obter informações com o propósito de habilitar (i) o intercâmbio de informações entre programas criados de modo independente e outros programas (incluindo este) e (ii) a utilização mútua das informações intercambiadas, devem entrar em contato com:
Tais informações podem estar disponíveis, sujeitas a termos e condições apropriados, incluindo, em alguns casos, o pagamento de uma taxa.
O programa licenciado descrito neste documento e todo o material licenciado disponível são fornecidos pela IBM sob os termos do Contrato com Cliente IBM, Contrato de Licença de Programa Internacional IBM ou qualquer contrato equivalente.
Todos os dados de desempenho aqui descritos foram determinados em um ambiente controlado. Portanto, os resultados obtidos em outros ambientes operacionais podem variar significativamente. Algumas medições podem ter sido efetuadas em sistemas em fase de desenvolvimento e não há garantia de que tais medições sejam as mesmas em sistemas disponíveis para o mercado. Além disso, algumas medições podem ter sido estimadas através de extrapolação. Os resultados reais podem variar. Os usuários deste documento devem verificar os dados que se aplicam ao seu ambiente específico.
As informações referentes a produtos não-IBM foram obtidas junto aos fornecedores desses produtos, anúncios publicados ou outras fontes publicamente disponíveis. A IBM não testou esses produtos e não pode confirmar a precisão de desempenho, compatibilidade nem qualquer outra reivindicação relacionada a produtos não-IBM. Dúvidas sobre os recursos dos produtos não-IBM devem ser encaminhadas aos fornecedores dos respectivos produtos.
IBM é marca da International Business Machines Corporation nos Estados Unidos e/ou em outros países.
Java e todas as marcas e logotipos com base em Java são marcas ou marcas registradas da Sun Microsystems, Inc. nos Estados Unidos e/ou em outros países. A tecnologia Java pertence e é exclusivamente licenciada pela Sun Microsystems, Inc.
Outros nomes de empresas, produtos e serviços podem ser marcas ou marcas de serviço de terceiros.