์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- database
- db
- json
- callback
- eport
- ์ฐธ๊ณ ๋ธ๋ก๊ทธ
- Import
- js
- setTimeout()
- await
- mysql
- Project
- slow and steady
- promise
- https://youtube.com/playlist?list=PLuHgQVnccGMA5836CvWfieEQy0T0ov6Jh&si=FTaYv8m21EhO-A2K
- Porject
- ajax
- ๋๊ธฐ
- execCommand
- object
- prj
- ๊ฒ์
- webpack
- JS #ํ๋ก์ ํธ
- sql
- async
- ๋น๋๊ธฐ
- https://m.blog.naver.com/tt2t2am1118/221010125300
- ํผํ
- addEventListener
- Today
- Total
C-log
๐งํ๋ก์ ํธ ์์ฑ : NPM&yarn(yarn-berry) ๋ณธ๋ฌธ
๐งํ๋ก์ ํธ ์์ฑ : NPM&yarn(yarn-berry)
4:Bee 2024. 6. 17. 16:57Nodejs๋ ๊ฐ๋ฐ ํ๊ฒฝ์ ์ปค์คํ ํ ์ ์๋ค. ๊ฐ๋ฐ ํ๊ฒฝ์ด ์๋์ผ๋ก ์ค์ ๋์ง ์๋ ๊ฒฝ์ฐ์๋ ์ง์ ์ปค์คํ ์ ํด์ผํ๊ธฐ ๋๋ฌธ์ Nodejs๋ฅผ ์์์ผ ํ๋ค. ๋ฐ๋ผ์ ์ปค์คํ ์ ํ๊ธฐ ์ํด์๋ Nodejs๊ฐ ๊ธฐ๋ณธ์ผ๋ก ์ค์น ๋์ด ์์ด์ผ ํ๋ค. (๋ณธ์ธ์ Nodejs๋ฅผ ์ค์น์ ๊ด๋ฆฌ๋ฆฌ๋ฅผ NVM์ผ๋ก ๊ด๋ฆฌํ๊ณ ์๋ค.) ์ฐธ๊ณ ๋ก ๊ฐ๋ฐ ํ๊ฒฝ์ด ์ฃผ๋ชฉ์ ์ด๋ผ๋ฉด ์ต์ ๋ฒ์ ์ ์ฌ์ฉํ๊ณ ๊ทธ๋ ์ง ์๊ณ ์๋ฒ๋ฅผ ์ํจ์ด๋ผ๋ฉด Nodejs LTS๋ฒ์ ์ ์ฌ์ฉํ๋ฉด ๋๋ค. ์์ ์์๋ nodejs 13.7.0๋ฒ์ ์ ์ฌ์ฉํ๊ณ ์๋ค. ํ์ง๋ง ์ฐ๋ฆฌ๋ ์ต์ ๋ฒ์ ์ ์ฌ์ฉํ ๊ฒ์ด๋ฉฐ 22.3.0๋ฒ์ ์ ์ฌ์ฉํ ๊ฒ์ด๋ค. ๋ฐ๋ผ์ NVM์ผ๋ก ์ต์ ๋ฒ์ ์ ๋ง์ถฐ ๋์.
NVM
//CMD
//์คํ ์์
//NVM ์ค์น ๊ฐ๋ฅ ๋ฒ์ ํ์ธ
nvm list available
//์ํ๋ ๋ฒ์ ์ค์น
nvm install 22.3.0
//ํ์ฌ ์ ์ฉ ๋ฒ์ ํ์ธ
nvm ls
//์ํ๋ ๋ฒ์ ๊ต์ฒด
nvm use 22.3.0
NPM & yarn(yarn-berry)
์์ ์์๋ NPM์ผ๋ก ์งํํ์ง๋ง ๋ณธ์ธ์ yarn-berry๋ฅผ ์์ฉํด์ ํจํค์ง ๋ฉ๋์ ๋ฅผ ๊ด๋ฆฌ ํ ๊ฒ์ด๋ค.
//CMD
//npm์ผ๋ก yarn ์ค์น
npm install -g yarn
//yarn ๋ฒ์ ์ berry๋ฒ์ ์ผ๋ก ์ค์น
yarn set version berry
์ด๋ ๊ฒ ์ค์น๋ฅผ ํ๊ฒ๋๋ฉด .yarn ํ์ผ์ด ์์ฑ์ด๋๋ฉด์ ๊ธฐ๋ณธ์ ์ธ package.jsonํ์ผ์ด ์์ฑ์ด ๋๋ค. ์ฌ๊ธฐ์ ์ฐ๋ฆฌ๋ npm init์ด ์๋ yarn์ ๋ง๋ ์ค์น๋ฅผ ํ ๊ฒ์ด๋ค.
//CMD
//init์ผ๋ก ์๋ก์ด ํ๋ก์ ํธ ๊ธฐ๋ณธ ์ค์
yarn init
๊ทธ๋ ๊ฒ package.json์ ๋ณด๊ฒ ๋๋ฉด ๋ฉ๊ทธ๋ฌ๋ name๊ณผ packageManager๋ง ๋ฉ๊ทธ๋ฌ๋ ๋์ฌ ์๋ ์ฝ๋๋ฅผ ๋ณผ ์ ์์ ๊ฒ์ด๋ค. yarn์ ์ฐ๋ฆฌ๊ฐ ์ง์ ํ๋ ํ๋ ์ค์ ํ๊ณ ์ข ์๋์ด์ผ ํ๋ ๋ถ๋ถ๋ค์ ์์ฑ ํด์ผํ๋ค. ์ด๊ฒ์ด ๋ฒ๊ฑฐ๋กญ๊ณ ์ด๋ ต๊ฒ ๋๊ปด์ง๋ค๋ฉด ๊ธฐ๋ณธ์ ์ธ npm์ ์ฌ์ฉํ๋ผ.
//package.json
{
"name": "Frontend-Development-Environment",
"packageManager": "yarn@4.3.0",
}
์ด๋ฌํ ์ฝ๋๋ฅผ ์ฐ๋ฆฌ๋ ์ง์ ์์ฑํด์ผํ๋ค. ๋ฐ๋ผ์ ์๋์ ๊ฐ์ด ์์ฑํ๋ฉด ๋๋ค.
//package.json
{
"name": "Frontend-Development-Environment",
"version": "1.0.0",
"packageManager": "yarn@4.3.0",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC"
}
์์ ๊ฐ ์ค์ ์ค๋ช ์ ์๋์ ๊ฐ๋ค.
- name: ํ๋ก์ ํธ์ ์ด๋ฆ์ "Frontend-Development-Environment"๋ก ์ ์ํ๊ณ ์์ต๋๋ค. ์ด๋ ํ๋ก์ ํธ๋ฅผ ์๋ณํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
- version: ํ๋ก์ ํธ์ ๋ฒ์ ์ "1.0.0"๋ก ์ค์ ํ๊ณ ์์ต๋๋ค. ์ด๋ ์ด๊ธฐ ๋ฆด๋ฆฌ์ค๋ฅผ ์๋ฏธํฉ๋๋ค.
- packageManager: "yarn@4.3.0"์ ์ฌ์ฉํ๊ณ ์์์ ๋ช ์ํฉ๋๋ค. ์ด๋ ํ๋ก์ ํธ๊ฐ Yarn Berry๋ฅผ ํจํค์ง ๋งค๋์ ๋ก ์ฌ์ฉํ๊ณ ์์์ ๋ํ๋ ๋๋ค.
- main: ํ๋ก์ ํธ์ ๋ฉ์ธ ์ง์ ํ์ผ์ "index.js"๋ก ์ค์ ํ๊ณ ์์ต๋๋ค. ์ด ํ์ผ์ ํ๋ก์ ํธ๊ฐ ์คํ๋ ๋ ๊ฐ์ฅ ๋จผ์ ๋ก๋๋๋ ํ์ผ์ ๋๋ค.
- scripts: "test" ์คํฌ๋ฆฝํธ๊ฐ ์ ์๋์ด ์์ผ๋ฉฐ, ํ
์คํธ๊ฐ ์ ์๋์ง ์์์ ๋ ์ค๋ฅ ๋ฉ์์ง๋ฅผ ์ถ๋ ฅํ๊ณ ๋น์ ์ ์ข
๋ฃ๋ฅผ ์๋ํ๋ ๋ช
๋ น์ ํฌํจํฉ๋๋ค.
- "test" ์คํฌ๋ฆฝํธ์ ์ญํ :
- ๋ช
๋ น ์คํ: "echo \"Error: no test specified\" && exit 1" ์ด ๋ช
๋ น์ ๋ ๋ถ๋ถ์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค.
- echo ๋ช ๋ น: "Error: no test specified" ๋ผ๋ ๋ฉ์์ง๋ฅผ ์ฝ์์ ์ถ๋ ฅํฉ๋๋ค. ์ด๋ ํ ์คํธ๊ฐ ์์ง ๊ตฌํ๋์ง ์์์์ ์ฌ์ฉ์์๊ฒ ์๋ฆฌ๋ ์ฉ๋๋ก ์ฌ์ฉ๋ฉ๋๋ค.
- exit ๋ช ๋ น: && ์ฐ์ฐ์๋ ์ฒซ ๋ฒ์งธ ๋ช ๋ น(echo)์ด ์ฑ๊ณต์ ์ผ๋ก ์คํ๋ ํ์ ๋ ๋ฒ์งธ ๋ช ๋ น์ ์คํํ๊ฒ ํฉ๋๋ค. exit 1์ ์คํฌ๋ฆฝํธ๋ฅผ ์ํ ์ฝ๋ 1๋ก ์ข ๋ฃ์ํต๋๋ค. ์ํ ์ฝ๋ 1์ ์ผ๋ฐ์ ์ผ๋ก ์ค๋ฅ๋ฅผ ๋ํ๋ด๋ฉฐ, ์ด๋ ํ ์คํธ ์คํฌ๋ฆฝํธ๊ฐ ์คํจํ์์ ์๋ฏธํฉ๋๋ค.
- ๋ช
๋ น ์คํ: "echo \"Error: no test specified\" && exit 1" ์ด ๋ช
๋ น์ ๋ ๋ถ๋ถ์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค.
- "test" ์คํฌ๋ฆฝํธ์ ์ญํ :
- author: ์์ฑ์ ์ ๋ณด๋ ๋น์ด ์์ต๋๋ค.
- license: ๋ผ์ด์ ์ค๋ "ISC"๋ก ์ค์ ๋์ด ์์ต๋๋ค. ์ด๋ ์คํ์์ค ๋ผ์ด์ ์ค ์ค ํ๋์ ๋๋ค.
์ฐธ๊ณ ๋ก package.json ํ์ผ์ scripts ์น์ ์์ ์ ์ํ๋ ์คํฌ๋ฆฝํธ๋ Yarn์ด๋ npm์์ ๋์ผํ๊ฒ ์๋ํ๋ค.
//command npm ์ค์์...
All commands:
access, adduser, audit, bugs, cache, ci, completion,
config, dedupe, deprecate, diff, dist-tag, docs, doctor,
edit, exec, explain, explore, find-dupes, fund, get, help,
help-search, hook, init, install, install-ci-test,
install-test, link, ll, login, logout, ls, org, outdated,
owner, pack, ping, pkg, prefix, profile, prune, publish,
query, rebuild, repo, restart, root, run-script, sbom,
search, set, shrinkwrap, star, stars, start, stop, team,
test, token, uninstall, unpublish, unstar, update, version,
view, whoami
์ถ๊ฐ์ ์ผ๋ก package.jsonํ์ผ์ ์์ ์ ํ๋ฉด ์๋์ ๊ฐ๋ค.
//package.json
{
"name": "Frontend-Development-Environment",
"version": "1.0.0",
"packageManager": "yarn@4.3.0",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"build": "echo \"์ฌ๊ธฐ์ ๋น๋ ์คํฌ๋ฆฝํธ๋ฅผ ์ถ๊ฐํฉ๋๋ค.\"",
"start": "echo \"์ฌ๊ธฐ์ ์คํํธ ์คํฌ๋ฆฝํธ๋ฅผ ์ถ๊ฐํฉ๋๋ค.\""
},
"author": "",
"license": "ISC"
}
์ด scripts๋ฅผ ์คํํ๋ ค๋ฉด ์๋์ ๊ฐ์ด ์์ฑ์ ํ๋ฉด ๋๋ค.
//CMD
yarn run build
์ฌ๊ธฐ์ ๋น๋ ์คํฌ๋ฆฝํธ๋ฅผ ์ถ๊ฐํฉ๋๋ค.
yarn run start
์ฌ๊ธฐ์ ์คํํธ ์คํฌ๋ฆฝํธ๋ฅผ ์ถ๊ฐํฉ๋๋ค.
์ด๋ ๊ฒ npm์ด ์๋ yarn์ ํตํด์ package.json์ ๊ธฐ๋ณธ์ ์ธ ํจํค์ง ๊ด๋ฆฌ์ ์ค์ ์ ํด ๋ณด์๋ค. ๋ง์ง๋ง ์ฐธ๊ณ ํ ๋ธ๋ก๊ทธ๋ ๋ฆฌ์กํธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก yarn์ ํตํด์ ํจํค์ง ์ข ์ ๊ด๊ณ๋ฅผ ์ค์ ํ๋ ๋ฐฉ๋ฒ์ด๋ค. ๋ฆฌ์กํธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํจํค์ง๋ฅผ ์ค์ ํ๊ธฐ ์ํด ์๋ ๋งํฌ๋ฅผ ์ฐธ๊ณ ํ๋ฉด ์ข์ ๋ฏ ํ๋ค. ์ถํ์ ์๊ฐ์ด ๋๋ค๋ฉด yarn์ ๋ํ ํฌ์คํ ์ ์์ฑํด ๋ณผ ๊ฒ์ด๋ค.
'โ๏ธReact > ๐งFront-Dev-Environment' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๐งWebpack : Loader (0) | 2024.06.23 |
---|---|
๐งWebpack : Entry (0) | 2024.06.21 |
๐งWebpack : module (1) | 2024.06.17 |
๐ง์ธ๋ถ ํจํค์ง๋ฅผ ๊ด๋ฆฌํ๋ ๋ฐฉ๋ฒ : npm install (0) | 2024.06.17 |
๐ง์์ ์ ์์ (0) | 2024.06.16 |