Guia Prático da Aplicação Bancária
Apesar de bastante claro na Wiki e explicado pelo Prof. em aula (exatamente deste modo), detalha-se aqui como correr a aplicação de exemplo Bank
. Nas palavras do professor, se conseguirem correr isto tudo sem problemas, é bastante provável que consigam desenvolver o projeto sem grandes dores de cabeça do ambiente.
1. Instalar o Java
Se não estiver já instalado, é necessário instalar uma versão do Java >=14. Em Arch, isto faz-se com paru -S jdk-openjdk
, em Ubuntu com sudo apt install openjdk-16-jdk
, etc.
Confirmar a versão com
java -version
javac -version
É extremamente importante que estes dois números sejam iguais e que sejam >=14!
2. Fazer Download do Código de Apoio
Criar uma diretoria para os ficheiros:
mkdir TesteBanco
cd TesteBanco
Descarregar os pacotes comprimidos da Wiki da cadeira e verificar que os 3 estão presentes:
wget https://web.tecnico.ulisboa.pt/~david.matos/w/pt/images/3/37/Po-uilib-202109221024.tar.bz2
wget https://web.tecnico.ulisboa.pt/~david.matos/w/pt/images/b/b3/Po-bank-core-202109221024.tar.bz2
wget https://web.tecnico.ulisboa.pt/~david.matos/w/pt/images/a/aa/Po-bank-app-202109221024.tar.bz2
ls
3. Extrair as Pastas dos Arquivos
Extrair usando x
de extract, v
de verbose e f
de file; verificar que (para além dos 3 arquivos) estão presentes as 3 pastas:
tar xvf Po-uilib-202109221024.tar.bz2
tar xvf Po-bank-core-202109221024.tar.bz2
tar xvf Po-bank-app-202109221024.tar.bz2
ls
4. Criar Links
As dependências que existem são peer dependencies, ou seja, as 3 pastas devem estar no mesmo diretório. Mais que isso, as pastas devem-se chamar o nome dos pacotes - é necessário retirar o número da versão. Para isso, podemos fazer symbolic links do nome esperado para as pastas reais, sem perder informação relativa à versão:
ln -s po-uilib-202109221024 po-uilib
ln -s po-bank-core-202109221024 po-bank-core
ln -s po-bank-app-202109221024 po-bank-app
ls
Verificar que agora existem 3 arquivos, 3 pastas e 3 links (=9 itens).
5. Compilar
A ordem interessa: tem-se que
po-uilib
não depende de nada, logo proceder logo à sua compilação;po-bank-core
não depende de nada (também poderia vir antes dopo-uilib
);po-bank-app
depende dos outros 2, logo só pode ser compilado depois destes.
cd po-uilib
make
cd ../po-bank-core
make
cd ../po-bank-app
make
cd ..
6. Executar
Primeiro, indicar ao Java onde encontrar as classes necessárias:
export CLASSPATH=$(pwd)/po-uilib/po-uilib.jar:$(pwd)/po-bank-core/po-bank-core.jar:$(pwd)/po-bank-app/po-bank-app.jar
Finalmente, executar a aplicação, passando como argumento o nome do banco, neste caso BPO (= Banco de Programação com Objetos)
:
java bank.app.App BPO
Parabéns!
Se tudo isto correu na perfeição, em princípio o ambiente é adequado para o desenvolvimento do projeto.