Junior
Co je to soubor package.json v Node.js a jakou roli hraje v projektu?
sobes.tech AI
Odpověď od AI
package.json je Node.js projektum manifestuma, amely tartalmazza a függőségek kezeléséhez, az építéshez és az alkalmazás futtatásához szükséges metaadatokat.
Fő mezők és szerepük:
name: A projekt neve.version: A projekt aktuális verziója.description: A projekt rövid leírása.keywords: Kulcsszavak tömbje a projekt leírásához.homepage: A projekt honlapjának URL-je.bugs: Objektum a hibakövető információkkal.license: A projekt licenc típusa.author: A projekt szerzőjének adatai.contributors: A hozzájárulók listája.files: Fájlok tömbje, amelyek a csomag közzétételekor kerülnek belefoglalásra.main: A belépési pont az alkalmazásban (fő fájl).browser: A kliensoldali belépési pont (ha alkalmazható).bin: Parancsok, amelyek globálisan elérhetőek a csomag telepítésekor.man: Man oldal fájlok útvonalai.directories: Objektum a projekt könyvtárainak útvonalairól (pl.lib,bin,man,doc).repository: Objektum a forráskód tárolójának információival.scripts: Objektum, amely tartalmazza aznpm-mel futtatható szkripteket.config: Objektum a szkriptekhez kapcsolódó beállításokhoz.dependencies: Objektum a produkciós függőségekhez.devDependencies: Objektum a fejlesztéshez és teszteléshez szükséges függőségekhez.peerDependencies: A csomag felhasználójának is függnie kell ezektől.bundledDependencies: Függőségek neveit tartalmazó tömb, amelyeket a csomag részeként kell csomagolni.optionalDependencies: Opcionális függőségek, amelyek telepíthetők, de hiányuk nem okoz telepítési hibát.engines: Objektum a támogatott Node.js és npm verziókról.os: Operációs rendszerek tömbje, amelyeken a projekt fut.cpu: CPU architektúrák tömbje.preferGlobal: Logikai érték, hogy a csomagnak globálisan kell-e települnie.private: Logikai érték, hogy a csomag privát-e, és nem szabad-e publikálni az npm-re.publishConfig: Beállítások az npm-re való publikáláshoz.
{
"name": "my-node-app", // A projekt neve
"version": "1.0.0", // A projekt verziója
"description": "Egyszerű Node.js alkalmazás",
"main": "index.js", // Belépési pont
"scripts": {
"start": "node index.js", // Indító szkript
"test": "echo \"Hiba: nincs megadva teszt\" && exit 1" // Teszt szkript
},
"keywords": [
"node",
"példa"
],
"author": "Az Ön Neve",
"license": "ISC",
"dependencies": { // Produkciós függőségek
"express": "^4.18.2"
},
"devDependencies": { // Fejlesztési függőségek
"nodemon": "^2.0.20"
}
}
A package.json kulcsfontosságú szerepet játszik a függőségek kezelésében (telepítés, frissítés, eltávolítás), a szkriptek automatikus feladatokhoz való meghatározásában (indítás, tesztelés, építés), a projekt metaadatainak szolgáltatásában az npm és más eszközök számára, valamint a projekt építésének reprodukálhatóságának biztosításában.