Vývojové prostředí: Instalace Node, Javy a NX Console
Last modified by polakb on 2025/06/30 17:29
Tato stránka popisuje postup, jak si vývojář může připravit vývojové prostředí se správnými verzemi Node.js a Javy, jak používat soubory `.nvmrc` a `.sdkmanrc`, a jak v IDE používat nástroj Nx Console.
tl;dr
- Aktualni navod: https://git.bcvsolutions.eu/czechidm/IdStory-IdM/-/blob/develop/README.md
- Formatovani backendu: npx nx format-backend
- Formatovani frontendu: npx nx format-frontend
- Build aplikace (war): npx nx build aggregator
- Build docker image: npx nx container app
- Instalace git hooku (automaticke formatovani): npm i
Instalace a nastavení fnm (Fast Node Manager)
macOS / Linux
curl -fsSL https://fnm.vercel.app/install | bash
# nebo přes Homebrew (macOS):
brew install fnm
# nebo přes Homebrew (macOS):
brew install fnm
Poté přidej do `~/.bashrc`, `~/.zshrc` nebo `~/.config/fish/config.fish`:
eval "$(fnm env --use-on-cd)"
Windows
winget install Schniz.fnm
# nebo
scoop install fnm
# nebo
choco install fnm
# nebo
scoop install fnm
# nebo
choco install fnm
Do PowerShell profilu přidej:
fnm env --use-on-cd --shell powershell | Out-String | Invoke-Expression
Pokud profil neexistuje:
if (!(Test-Path $PROFILE)) { New-Item -ItemType File -Path $PROFILE -Force }
Set-ExecutionPolicy Unrestricted
Set-ExecutionPolicy Unrestricted
Použití fnm
fnm install 18
fnm default 18
fnm use # použije verzi z .nvmrc pokud existuje
fnm default 18
fnm use # použije verzi z .nvmrc pokud existuje
Instalace SDKMAN! a JDK
SDKMAN! pro macOS / Linux / WSL
curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"
sdk version
source "$HOME/.sdkman/bin/sdkman-init.sh"
sdk version
Instalace Javy
sdk install java
sdk install java 21.0.2-tem
sdk default java 21.0.2-tem
sdk install java 21.0.2-tem
sdk default java 21.0.2-tem
Vlastní JDK
sdk install java moje-jdk-18 /cesta/k/jdk-18
sdk use java moje-jdk-18
sdk use java moje-jdk-18
Použití .sdkmanrc
Vytvoř soubor `.sdkmanrc` v kořenovém adresáři projektu:
java=21.0.2-tem
Pak spusť:
sdk env
Nastavení IDE: Nx Console pro IntelliJ IDEA / WebStorm
Instalace pluginu
- Otevři Settings → Plugins
- Vyhledej "Nx Console"
- Nainstaluj, restartuj IDE
Použití
- Otevři Nx Console přes View → Tool Windows → Nx Console
- Zde můžeš:
- Spouštět příkazy (build, test, lint…)
- Generovat nové moduly pomocí GUI
- Zobrazit závislosti (`nx graph`)
Nx v CLI
Pokud je Nx již v projektu:
npx nx --help
npx nx list
npx nx graph
npx nx run-many --target=build --all
npx nx affected --target=test
npx nx list
npx nx graph
npx nx run-many --target=build --all
npx nx affected --target=test
Shrnutí kroků pro vývojáře
| Co | Příkaz | |
|---|---|---|
| Instalace fnm | `curl ... | bash` nebo `winget install Schniz.fnm` |
| Shell setup | `eval "$(fnm env --use-on-cd)"` | |
| Použití verze z .nvmrc | `fnm use` | |
| Instalace SDKMAN! | `curl ... | bash` a `source ~/.sdkman/bin/sdkman-init.sh` |
| Instalace konkrétní verze Javy | `sdk install java 17.0.8-tem` | |
| Použití .sdkmanrc | `sdk env` | |
| Instalace Nx Console do IDE | Přes pluginy v IntelliJ/WebStorm | |
| Prohlížení/spouštění Nx tasků | V Nx Console nebo pomocí CLI |
Doporučení
- Automaticky načítej `.sdkmanrc` pomocí:
<code bash>
source "$HOME/.sdkman/bin/sdkman-init.sh"
sdk env install
</code>
source "$HOME/.sdkman/bin/sdkman-init.sh"
sdk env install
</code>
- Automatické použití Node verze:
<code bash>
eval "$(fnm env --use-on-cd)"
</code>
eval "$(fnm env --use-on-cd)"
</code>
- Formatovani backendu:
<code bash>
npx nx format-backend
</code>
npx nx format-backend
</code>
- Formatovani frontendu:
<code bash>
npx nx format-frontend
</code>
npx nx format-frontend
</code>
- Build aplikace (WAR):
<code bash>
npx nx build aggregator --skip-nx-cache
</code>
npx nx build aggregator --skip-nx-cache
</code>
- Build backendu (WAR):
<code bash>
npx nx dev-build aggregator --skip-nx-cache
</code>
npx nx dev-build aggregator --skip-nx-cache
</code>
- Build docker image pro buildeni aplikace:
<code bash>
docker buildx bake
</code>
docker buildx bake
</code>
- V IDE použij Run Anything (Ctrl+Ctrl nebo Shift+Shift) → napiš `nx` a použij autocomplete.