Java é diferente da maioria dos pacotes do LFS e BLFS. É uma linguagem de programação que trabalha com arquivos de códigos de byte para obter instruções e executá-las em uma "Java Virtual Machine" ("JVM"). Um aplicativo introdutório Java se parece com:
public class HelloWorld
{
public static void main(String[] args)
{
System.out.println("Hello, World");
}
}
Esse aplicativo é salvo como "HelloWorld.java
". O nome do arquivo,
"HelloWorld", precisa
corresponder ao nome da classe. Em seguida, ele é convertido em
código de bytes com "javac
HelloWorld.java". O arquivo de saída gerada é
"HelloWorld.class
". O aplicativo é
executado com "java
HelloWorld". Isso cria uma "JVM" e executa o
código. A extensão 'class' precisa não ser especificada.
Vários arquivos de classe podem ser combinados em um arquivo com o comando "jar". Isso é semelhante ao comando "tar" padrão. Por exemplo, o comando "jar cf myjar.jar *.class" combinará todos os arquivos de classe em um diretório em um arquivo" jar". Eles atuam como arquivos de biblioteca.
A "JVM" consegue procurar e usar classes em arquivos "jar"
automaticamente. Ela usa a variável de ambiente "CLASSPATH
" para procurar arquivos "jar". Essa é uma
lista padrão de nomes de diretórios separados por dois pontos,
semelhante à variável de ambiente "PATH
".
Criar uma "JVM" a partir do fonte exige um conjunto de dependências circulares. A primeira coisa que é necessária é um conjunto de aplicativos chamado "Java Development Kit" ("JDK"). Esse conjunto de aplicativos inclui "java", "javac", "jar" e vários outros. Ele também inclui vários arquivos "jar" básicos.
Para começar, configuramos uma instalação binária do "JDK" criada
pelos(as) editores(as) do BLFS. Ela é instalada no diretório
"/opt
" para permitir múltiplas
instalações, incluindo uma versão baseada no fonte.
Esse pacote é conhecido por construir e funcionar corretamente usando uma plataforma LFS 12.2.
Transferência do binário (x86): https://anduin.linuxfromscratch.org/BLFS/OpenJDK/OpenJDK-22.0.2/OpenJDK-22.0.2+9-i686-bin.tar.xz
Soma de verificação MD5 da transferência: 400033f7e0755c14687afe277a5f5672
Tamanho da transferência (binário): 162 MB
Espaço em disco estimado exigido: 312 MB
Transferência do binário (x86_64): https://anduin.linuxfromscratch.org/BLFS/OpenJDK/OpenJDK-22.0.2/OpenJDK-22.0.2+9-x86_64-bin.tar.xz
Soma de verificação MD5 da transferência: 83f5b325922b3cef357a6e63d368ce91
Tamanho da transferência (binário): 170 MB
Espaço em disco estimado exigido: 341 MB
alsa-lib-1.2.12, Cups-2.4.10, giflib-5.2.2 e Bibliotecas do Xorg
Comece extraindo o "tarball" binário apropriado para tua
arquitetura e mudando para o diretório extraído. Instale o binário
"OpenJDK" com os seguintes
comandos como o(a) usuário(a) "root
":
install -vdm755 /opt/OpenJDK-22.0.2-bin && mv -v * /opt/OpenJDK-22.0.2-bin && chown -R root:root /opt/OpenJDK-22.0.2-bin
A versão binária agora está instalada. Você pode criar um link
simbólico para essa versão emitindo, como o(a) usuário(a)
"root
":
ln -sfn OpenJDK-22.0.2-bin /opt/jdk
Agora você pode prosseguir para "Configurando o ambiente Java", onde as instruções assumem que o link acima existe.