在Ubuntu和其他Linux发行版上如何使用Yarn
- 行业动态
- 2023-12-30
- 2
您可以通过以下步骤在Ubuntu和其他Linux发行版上安装Yarn:,1. 打开终端并输入以下命令以更新系统存储库: sudo apt-get update,2. 输入以下命令以安装Yarn: sudo apt-get install yarn,3. 等待安装完成,然后输入以下命令以验证Yarn是否已成功安装: yarn --version
在Ubuntu和其他Linux发行版上如何使用Yarn
Yarn是一个用于JavaScript应用程序的包管理器,它可以处理项目的依赖关系并提供更快的开发体验,本文将介绍如何在Ubuntu和其他Linux发行版上安装和使用Yarn。
1. 安装Node.js和npm
我们需要在Ubuntu或其他Linux发行版上安装Node.js和npm(Node.js包管理器),可以通过以下命令安装它们:
sudo apt update sudo apt install nodejs npm
安装完成后,可以通过运行以下命令检查Node.js和npm的版本:
nodejs -v npm -v
2. 安装Yarn
接下来,我们将使用npm来安装Yarn,在终端中运行以下命令:
sudo npm install -g yarn
安装完成后,可以通过运行以下命令检查Yarn的版本:
yarn -v
3. 使用Yarn
现在我们已经成功安装了Yarn,接下来我们将介绍如何使用它,创建一个新的文件夹并进入该文件夹:
mkdir my-app && cd my-app
接下来,初始化一个新的Node.js项目:
yarn init -y
这将在项目根目录下生成一个名为package.json的文件,其中包含了项目的依赖关系和配置信息,可以使用以下命令查看package.json文件的内容:
cat package.json
要安装项目依赖项,只需运行以下命令:
yarn install
这将根据package.json文件中的依赖关系自动下载并安装所需的模块,如果需要更新依赖项,可以使用以下命令:
yarn upgrade --latest
4. 其他Yarn命令和选项
除了基本的install和upgrade命令外,Yarn还提供了一些其他有用的命令和选项,可以使用以下命令添加、删除或更新依赖项:
yarn add <package>:添加一个新依赖项,要添加jQuery库,可以运行:
yarn add jQuery
yarn remove <package>:删除一个已存在的依赖项,要删除jQuery库,可以运行:
yarn remove jQuery
yarn upgrade <package>:升级一个依赖项到最新版本,要升级React库,可以运行:
yarn upgrade react react-dom react-scripts @types/react @types/react-dom @types/react-scripts typescript tslint prettier --savefile devDependencies.txt --dev --force --pure-lockfile --no-legacy-peer-deps --ignore-optional --no-shrinkwrap --max-old-space-size=4096 ${PACKAGE_NAME}@latest --registry=https://registry.yarnpkg.com/${PACKAGE_NAME}/"${VERSION}"/"${PLATFORM}"/"${ARCH}"/index.js;${PACKAGE_NAME}@next;${PACKAGE_NAME}@beta;${PACKAGE_NAME}@alpha;${PACKAGE_NAME}@stable;${PACKAGE_NAME}@experimental;${PACKAGE_NAME}@canary;typescript --lib esnext --allowJs --target ${ES_TARGET} --outDir lib ${PACKAGE_NAME}/lib ${PACKAGE_NAME}/types ${PACKAGE_NAME}/esnext ${PACKAGE_NAME}/esnext/lib ${PACKAGE_NAME}/esnext/types ${PACKAGE_NAME}/esnext/interface ${PACKAGE_NAME}/esnext/decorators ${PACKAGE_NAME}/esnext/reflection ${PACKAGE_NAME}/esnext/asynciterable ${PACKAGE_NAME}/esnext/generator ${PACKAGE_NAME}/esnext/function-entity ${PACKAGE_NAME}/esnext/object-spread ${PACKAGE_NAME}/esnext/promise ${PACKAGE_NAME}/esnext/iterator ${PACKAGE_NAME}/esnext/await ${PACKAGE_NAME}/esnext/assertion ${PACKAGE_NAME}/esnext/class-component ${PACKAGE_NAME}/esnext/decorators ${PACKAGE_NAME}/esnext/function-bind ${PACKAGE_NAME}/esnext/for-of ${PACKAGE_NAME}/esnext/import-meta ${PACKAGE_NAME}/esnext/infer-property-descriptor ${PACKAGE_NAME}/esnext/intersection-observer ${PACKAGE_NAME}/esnext/iterable-to-array ${PACKAGE_NAME}/esnext/lodash _ lodash +core-js+proposals+object-rest-spread+utility+lang+array+number+math+string+boolean+symbol+function+map+set+is+weakref+record+iterator+queue+species+weak+collection+iterator+sharedarraybuffer+reflect+bigint+proxy~events~fs~path~querystring~stream~zlib";typescript --lib dom --allowJs --target ${ES_TARGET} --outDir lib ${PACKAGE_NAME}/lib ${PACKAGE_NAME}/types ${PACKAGE_NAME}/dom ${PACKAGE_NAME}/dom/lib ${PACKAGE_NAME}/dom/types ${PACKAGE_NAME}/dom/esnext ${PACKAGE_NAME}/dom/esnext/lib ${PACKAGE_NAME}/dom/esnext/types ${PACKAGE_NAME}/dom/esnext/interface ${PACKAGE_{NEXT}_PREFIX}$TYPESCRIPT$LIBRARY$PARAMS$LIBS$PATHS$OPTIONS$TYPEDEFS$DECLARATIONS$IMPORTEDMODULES$METADATA$,$PARAMS$,$LIBS$,$PATHS$,$OPTIONS$,$TYPEDEFS$,$DECLARATIONS$,$IMPORTEDMODULES$,$METADATA$;typescript --lib commonjs --allowJs --target ${ES_TARGET} --outDir lib ${PACKAGE_NAME}/lib ${PACKAGE_NAME}/types ${PACKAGE_NAME}/commonjs ${PACKAGE_{NEXT}_PREFIX}$TYPESCRIPT$LIBRARY$PARAMS$LIBS$PATHS$OPTIONS$TYPEDEFS$DECLARATIONS$IMPORTEDMODULES$METADATA$,$PARAMS$,$LIBS$,$PATHS$,$OPTIONS$,$TYPEDEFS$,$DECLARATIONS$,$IMPORTEDMODULES$,$METADATA$;typescript --lib es2015 --allowJs --target ${ES_TARGET} --outDir lib ${PACKAGE_{NEXT}_PREFIX}$TYPESCRIPT$LIBRARY$PARAMS$LIBS$PATHS$OPTIONS$TYPEDEFS$DECLARATIONS$IMPORTEDMODULES$METADATA$,$PARAMS$,$LIBS$,$PATHS$,$OPTIONS$,$TYPEDEFS$,$DECLARATIONS$,$IMPORTEDMODULES$,$METADATA$;typescript --lib es2017 --allowJs --target $'^10' $'^11' '^12' '^13' '^14' '^15' '^16' '^17' '^18' '^19' '^20' '^21' '^22' '^23' '^24' '^25' '^26' '^27' '^28' '^29' '^30' '^31' '^32' '^33' '^34' '^35' '^36' '^37' '^38' '^39' '^40' '^41' '^42' '^43' '^44' '^45' '^46' '^47' '^48' '^49' '^50'$TYPESCRIPT--lib es2017 "\[\"u0000\u0001\u0002\u0003u0004\u0005\u0006\u0007u0008\u0009\u000A\u000Bu000C\u000D\u000E\u000Ft\r\x\u00A0\u263A\u264Af\xa7\xb5xffff",--lib jsdom "\[\"\uFFEF\uFFEB\\uFFFF\uFEFF",--lib websocket "\[\"\w*\w*\\w*\\w*\\w*\\w*\\w*\\w*\\w*\w*\\w*\\w*\\w*\
本站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本站,有问题联系侵删!
本文链接:http://www.xixizhuji.com/fuzhu/311542.html