Junior
Čo je súbor package.json v Node.js a akú úlohu zohráva v projekte?
sobes.tech AI
Odpoveď od AI
package.json je manifest projektu Node.js, ktorý obsahuje metadáta potrebné na správu závislostí, zostavenie a spustenie aplikácie.
Hlavné polia a ich úloha:
name: Názov projektu.version: Aktuálna verzia projektu.description: Krátky popis projektu.keywords: Pole kľúčových slov pre popis projektu.homepage: URL domovskej stránky projektu.bugs: Objekt s informáciami o sledovači chýb.license: Typ licencie projektu.author: Informácie o autorovi projektu.contributors: Zoznam prispievateľov.files: Pole súborov zahrnutých pri publikovaní balíka.main: Vstupný bod do aplikácie (hlavný súbor).browser: Vstupný bod pre klientsku časť (ak je vhodné).bin: Príkazy, ktoré by mali byť dostupné globálne pri inštalácii balíka.man: Cesty k man stránkam.directories: Objekt s cestami k adresárom projektu (napríkladlib,bin,man,doc).repository: Objekt s informáciami o úložisku zdrojového kódu.scripts: Objekt obsahujúci skripty, ktoré je možné spúšťať pomocounpm.config: Objekt pre nastavenia špecifické pre skripty.dependencies: Objekt obsahujúci závislosti potrebné na prevádzku projektu v produkcii.devDependencies: Objekt obsahujúci závislosti potrebné iba pre vývoj a testovanie.peerDependencies: Závislosti, od ktorých by mal závisieť aj používateľ balíka.bundledDependencies: Pole mien závislostí, ktoré by mali byť zabalené s balíkom.optionalDependencies: Závislosti, ktoré môžu byť nainštalované, ale ich neprítomnosť nezpôsobí chybu pri inštalácii.engines: Objekt určujúci verzie Node.js a npm podporované projektom.os: Pole operačných systémov, na ktorých projekt beží.cpu: Pole architektúr CPU, na ktorých projekt beží.preferGlobal: Logická hodnota, ktorá určuje, či by mal byť balík inštalovaný globálne.private: Logická hodnota, ktorá určuje, či je balík súkromný a nemal by byť publikovaný na npm.publishConfig: Nastavenia pre publikovanie balíka na npm.
{
"name": "my-node-app", // Názov projektu
"version": "1.0.0", // Verzia projektu
"description": "Jednoduchá Node.js aplikácia",
"main": "index.js", // Vstupný bod
"scripts": {
"start": "node index.js", // Skript na spustenie
"test": "echo \"Chyba: nie je zadaný test\" && exit 1" // Skript na testovanie
},
"keywords": [
"node",
"príklad"
],
"author": "Vaše Meno",
"license": "ISC",
"dependencies": { // Závislosti pre produkciu
"express": "^4.18.2"
},
"devDependencies": { // Závislosti pre vývoj
"nodemon": "^2.0.20"
}
}
package.json zohráva kľúčovú úlohu v správe závislostí (inštalácia, aktualizácia, odstránenie), definovaní skriptov pre automatizáciu úloh (spustenie, testovanie, zostavenie), poskytovaní metadát o projekte pre npm a ďalšie nástroje, ako aj zabezpečení reprodukovateľnosti zostavenia projektu.