Este tutorial irá guiá-lo através do processo de instalação e configuração do ambiente necessário para utilizar a ferramenta NHipster em máquinas como Windows, Linux e MacOS.
Nota do criado: Não é necessário instalar o NVM ou SDKMan, por isso no sumário estão como opcional, porém é obrigatório ter instalado o Java na versão 11.0.12-open e o Node na versão 14.16.x!
- Tutorial de Instalação e Configuração do NHipster
- Automático
- Manual
- Plus
- Para executar o Shell script, você DEVE ter um arquivo .jdl base na pasta raiz onde fica o
start.sh
, caso contrário não irá funcionar!
- Para executar-lo, primeiro de ao arquivo as devidas permissões e em seguida sim iniciar o script:
-
chmod +x ./script.sh
-
./start.sh
-
- Para executar-lo, execute o arquivo:
-
script.bat
-
- Você deve acessar o arquivo
server/src/orm.config.ts
e onde há a linha:
if (process.env.BACKEND_ENV === 'dev')
O SDKMan é uma ferramenta de gerenciamento de software para Java e outras linguagens de programação. Siga os passos abaixo para instalá-lo:
- Baixe o SDKMan para Windows a partir do seguinte link: SDKMan para Windows.
- Extraia o conteúdo do arquivo zip para uma pasta de sua escolha.
- Abra o Prompt de Comando do Windows e navegue até a pasta onde o SDKMan foi extraído.
- Execute o seguinte comando para permitir que o script de instalação seja executado:
Set-ExecutionPolicy Unrestricted -Scope CurrentUser
- Execute o seguinte comando para instalar o SDKMan:
.\\install.ps1
- Para verificar se o SDKMan foi instalado corretamente, execute o seguinte comando:
O resultado deve ser a versão atual do SDKMan instalada na sua máquina.
sdk version
- Abra o terminal ou prompt de comando.
- Digite o seguinte comando para baixar o SDKMan:
curl -s "https://get.sdkman.io" | bash
- Após a conclusão do download, digite o seguinte comando para ativar o SDKMan:
source "$HOME/.sdkman/bin/sdkman-init.sh"
- Para verificar se o SDKMan foi instalado corretamente, digite o seguinte comando:
O resultado deve ser a versão atual do SDKMan instalada na sua máquina.
sdk version
O NVM é uma ferramenta de gerenciamento de versões do Node.js. Siga os passos abaixo para instalá-lo:
- Baixe o instalador do NVM para Windows a partir do seguinte link: NVM para Windows.
- Extraia o conteúdo do arquivo zip para uma pasta de sua escolha.
- Execute o instalador e siga as instruções na tela.
- Após a conclusão da instalação, abra o Prompt de Comando do Windows e digite o seguinte comando para verificar se o NVM foi instalado corretamente:
O resultado deve ser a versão atual do NVM instalada na sua máquina.
nvm --version
- Abra o terminal ou prompt de comando.
- Digite o seguinte comando para baixar e instalar o NVM:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
- Após a conclusão da instalação, digite o seguinte comando para carregar o NVM:
source ~/.nvm/nvm.sh
- Para verificar se o NVM foi instalado corretamente, digite o seguinte comando:
O resultado deve ser a versão atual do NVM instalada na sua máquina.
nvm --version
O Docker é uma plataforma de containerização que permite empacotar e distribuir aplicativos com suas dependências. Siga os passos abaixo para instalar o Docker:
- Baixe o instalador do Docker para Windows a partir do seguinte link: Docker para Windows.
- Execute o instalador e siga as instruções na tela.
- Após a conclusão da instalação, verifique se o Docker foi instalado corretamente executando o seguinte comando no Prompt de Comando do Windows:
O resultado deve ser a versão atual do Docker iBanco de Dados MySQL em Ambiente de Desenvolvimentonstalada na sua máquina.
docker --version
- Abra o terminal.
- Execute os seguintes comandos para instalar o Docker:
sudo apt-get update sudo apt-get install docker.io
- Após a conclusão da instalação, verifique se o Docker foi instalado corretamente executando o seguinte comando:
O resultado deve ser a versão atual do Docker instalada na sua máquina.
docker --version
- Baixe o instalador do Docker para MacOS a partir do seguinte link: Docker para MacOS.
- Execute o instalador e siga as instruções na tela.
- Após a conclusão da instalação, verifique se o Docker foi instalado corretamente executando o seguinte comando no terminal:
O resultado deve ser a versão atual do Docker instalada na sua máquina.
docker --version
-
Aviso: Antes de executar os comandos a seguir, verifique se você tem privilégios administrativos ou está usando uma conta de usuário com permissões para executar comandos sudo.
-
Aviso de Segurança: A adição do usuário ao grupo "docker" concede privilégios para executar comandos Docker sem a necessidade de inserir uma senha. Isso pode representar um risco de segurança, pois qualquer comando Docker executado pelo usuário terá acesso privilegiado ao sistema. Portanto, é importante considerar os seguintes pontos:
Adicionar seu usuário ao grupo "docker" permite que você execute comandos Docker sem a necessidade de usar sudo em cada comando. Isso pode facilitar o trabalho diário com o Docker.
No entanto, isso também significa que qualquer comando Docker executado pelo seu usuário terá acesso privilegiado ao sistema, o que pode ser arriscado se você executar comandos desconhecidos ou baixar imagens Docker não confiáveis.
Antes de adicionar seu usuário ao grupo "docker", avalie os riscos e certifique-se de confiar nos comandos Docker que você executará e nas imagens que você baixará.
Agora, você pode prosseguir com os seguintes comandos:
- Crie um grupo chamado "docker" executando o seguinte comando:
sudo groupadd docker
- Adicione seu usuário atual ao grupo "docker" executando o seguinte comando:
sudo usermod -aG docker ${USER}
- Observação: Após adicionar seu usuário ao grupo "docker", será necessário fazer logout e fazer login novamente para que as alterações entrem em vigor.
Certifique-se de seguir esses avisos para evitar problemas durante a instalação e configuração do Docker, considerando a segurança do seu sistema.
Agora que o Docker está instalado, siga os passos abaixo para configurar o container do NHipster:
- Abra o terminal ou prompt de comando.
- Execute o seguinte comando para baixar a imagem do MySQL:
docker pull mysql
- Após o download da imagem, execute o seguinte comando para iniciar um container com o MySQL:
docker run -p 3306:3306 --name <nome_do_container> -e MYSQL_ROOT_PASSWORD=<senha_do_banco> -e MYSQL_DATABASE=<nome_do_banco> -d mysql
- Aguarde até que o container seja iniciado. Você pode verificar o status do container executando o seguinte comando:
O resultado deve mostrar o container "nhip-mysql" em execução.
docker ps
Antes de prosseguir com a instalação do Nhipster, é necessário ter o Node.js na versão 14.16 e o Java na versão 11 instalados em seu sistema, pois o NHipster requer essas versões específicas.
nvm install 14.16 && nvm use 14.16
sdk install java 11.0.12-open && sdk use java 11.0.12-open
- Agora que o ambiente está configurado, você pode instalar o NHipster e gerar seu primeiro projeto. Siga os passos abaixo:
- Abra o terminal ou prompt de comando.
- Execute o seguinte comando para instalar o NHipster:
npm i -g generator-jhipster-nodejs jhipster
-
Aguarde até que o processo de instalação seja concluído.
-
Caso você esteja enfrentando problemas com o pacote "browser-sync-client" no frontend, execute o seguinte comando para corrigi-lo:
npm i [email protected]
-
No backend, você deve instalar uma dependência em uma versão específica para que ele execute fielmente:
npm i @types/[email protected]
-
Para gerar um novo projeto utilizando um arquivo JDL (JHipster Domain Language), execute o seguinte comando substituindo <local_do_jdl> pelo caminho do arquivo JDL:
nhipster jdl <local_do_jdl>
Certifique-se de que o arquivo JDL esteja corretamente formatado e contendo as configurações desejadas para o seu projeto.
Após a geração do projeto com o comando nhipster jdl <local_do_jdl>
, você precisa adicionar manualmente a importação do 'URL' em seu código. Siga os passos abaixo para fazer isso:
- Localize o arquivo onde você deseja adicionar a importação do 'URL'. Por exemplo,
src/client/header-util.ts
. - Abra o arquivo em um editor de código.
- Pressione
Ctrl + P
para abrir a barra de pesquisa do editor. - Digite
src/client/header-util.ts:4
para ir diretamente à linha 4 do arquivo. - Adicione a seguinte linha de código abaixo da importação existente:
import { URL } from 'url';
- O nhipster não gera a linha de que tipo de banco e quais suas configurações utilizar quando o backend está em desenvolvimento, logo você deve fazer isso com:
if (process.env.BACKEND_ENV === 'dev') {
ormconfig = {
name: 'default',
type: 'mysql',
database: 'braas',
host: 'localhost',
port: 3307,
username: 'sa',
password: 'yourStrong(!)Password',
logging: false,
synchronize: commonConf.SYNCRONIZE,
entities: commonConf.ENTITIES,
migrations: commonConf.MIGRATIONS,
cli: commonConf.CLI,
migrationsRun: commonConf.MIGRATIONS_RUN,
};
}
-
Adicionando estas linhas ao arquivo
server/src/orm.config.ts
e modificando os campos com as informações do seu banco, deve-se fazer um último passo: -
Altere a linha
synchronize: commonConf.SYNCRONYZE,
para
synchronize: true,
- Execute o comando:
cd server && npm run start:dev
- Apos ele executar, completamente e exibir a porta do servidor, pare o código e volte as configurações iniciais desta linha!
- É recomendado reiniciar o computador após a instalação do SDKMan, NVM e Docker para garantir que todas as alterações sejam aplicadas corretamente.
- O NHipster usa como padrão a versão 14 do Node.js. Versões acima podem ter problemas ao iniciar o NHipster. Certifique-se de que a versão correta do Node.js esteja instalada.
- Verifique a documentação oficial do NHipster para obter mais informações sobre o uso da ferramenta.
-
Agora com tudo pronto,você pode executar em um terminal:
cd server && npm run start:dev
e na pasta raíznpm start
-
Esses dois comandos irão iniciar tanto o backend quanto o frontend.
application{
config{
baseName <nome_da_aplicação>
applicationType <tipo_da_aplicação>
authenticationType <tipo_de_autenticação>
prodDatabaseType <banco_de_dados_em_produção>
devDatabaseType <banco_de_dados_em_desenvolvimento>
enableSwaggerCodegen true
enableTranslation true
languages [<idioma(s)_adicionais_do_projeto>]
nativeLanguage <idioma_nativo>
serverPort <porta_do_servidor>
}
entities *
}
Utilizando este arquivo, você pode gerar sua aplicação sem precisar selecionar na hora da execução, além de no mesmo arquivo que estas informações ficam, você pode criar entidades, relações, dtos, etc de sua aplicação.
Para mais informações, veja: https://www.jhipster.tech/jdl/
Se você deseja contribuir para este tutorial ou encontrou algum problema, fique à vontade para criar um issue ou pull request no repositório GitHub.
Este tutorial está sob a licença MIT. Consulte o arquivo LICENSE para mais informações.