====== Vývojové prostředí: Instalace Node, Javy a NX Console ======
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**.
===== 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
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
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
==== Použití fnm ====
fnm install 18
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
==== Instalace Javy ====
sdk install java
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
==== 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
===== 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í:
source "$HOME/.sdkman/bin/sdkman-init.sh"
sdk env install
* Automatické použití Node verze:
eval "$(fnm env --use-on-cd)"
* Formatovani backendu:
npx nx format-backend
* Formatovani frontendu:
npx nx format-frontend
* Build aplikace (WAR):
npx nx build aggregator --skip-nx-cache
* Build backendu (WAR):
npx nx dev-build aggregator --skip-nx-cache
* Build docker image pro buildeni aplikace:
docker buildx bake
* V IDE použij **Run Anything** (Ctrl+Ctrl nebo Shift+Shift) → napiš `nx` a použij autocomplete.