- Java锁的逻辑(结合对象头和ObjectMonitor)
- 还在用饼状图?来瞧瞧这些炫酷的百分比可视化新图形(附代码实现)⛵
- 自动注册实体类到EntityFrameworkCore上下文,并适配ABP及ABPVNext
- 基于Sklearn机器学习代码实战
Volta 是一种管理 JavaScript 命令行工具的便捷方式.
volta 的特点:
使用 Volta,您可以一次选择 Node 引擎,然后不再担心它。您可以在项目之间切换,而不必手动切换 nodejs 版本。你可以在工具链中安装 npm 二进制包,而不必定期重新安装它们,或者弄清楚它们停止工作的原因.
获取并使用特定版本的 Node
volta install node@14
您应该立即注意到该工具的响应速度有多快。您的开发时间是宝贵的 JavaScript 开发人员应该拥有时髦的工具.
Volta 允许你用一个命令为一个项目选择节点引擎和包管理器
volta pin node@12
Volta 将 Node 引擎的准确版本保存在 package.json ,这样你就可以把你的选择提交给 git。从那时起,每次在项目目录中运行 Node 时,Volta 都会自动切换到您选择的同一版本 的 Node。类似的。所有的合作者都可以通过在他们的开发机器上安装 Volta 来做同样的事情.
Volta 还允许您将最喜欢的二进制包作为命令行工具安装,而不必担心它们会干扰您的开发项目。更好的是,这些工具在安装时被固定到特定的 Node 引擎上,除非您显式地告诉它们,否则它们不会更改。这意味着一旦一个工具工作了,它就会继续工作.
npm install -g surge
surge -h
在安装 Volta 前, 如果有使用其它的 nodejs 管理工具/nodejs,可以提前卸载(非必须).
在大多数 Unix 系统(包括 macOS)上,您可以使用一个命令安装 Volta
curl https://get.volta.sh | bash
对于 bash , zsh 和 fish ,这个安装程序将自动更新控制台启动脚本。如果您希望防止修改控制台启动脚本,请参阅跳过 Volta 设置。要手动配置你的 shell 使用 Volta,编辑你的控制台启动脚本如下
VOLTA_HOME
变量设置为 $HOME/.volta
$VOLTA_HOME/bin
添加到 PATH 变量的开头 对于 Windows, 下载并运行 Windows 安装程序 并按照说明操作.
Volta 的功能依赖于创建符号链接,所以你必须:
- 启用 开发者模式 (推荐)
- 以提升的权限运行 Volta(不推荐)
如果您在 Linux 的 Windows 子系统中使用 Volta,请遵循上面的 Unix 安装指南.
Volta 的工作是管理 JavaScript 命令行工具,如 node、npm、yarn 或作为 JavaScript 包的一部分发布的可执行文件.
与包管理器类似,Volta 会根据当前目录跟踪您正在处理的项目(如果有的话)。Volta 工具链中的工具会自动检测您所处的项目是否使用特定版本的工具,并为您路由到正确的工具版本.
您可以使用两个命令控制由 Volta 工具链管理的工具: Volta install 和 Volta uninstall .
要将工具安装到工具链中,需要设置该工具的默认版本。Volta 将始终使用这个默认值,除非您在一个已配置 Volta 使用不同版本的项目目录中工作。当您选择默认版本时,Volta 也会将该版本下载到本地缓存中.
例如,您可以选择 node 的确切版本作为默认版本
volta install node@14.15.5
你不需要指定一个精确的版本,在这种情况下,Volta 会选择一个合适的版本来匹配你的请求
volta install node@14
你也可以指定最新版本,或者甚至完全不选择版本,Volta 将选择最新的 LTS 版本
volta install node
一旦您运行了这些命令中的一个,在您的 PATH 环境(或 Windows 中的 PATH)中由 Volta 提供的节点可执行文件将在默认情况下自动运行您选择的 node 版本.
同样地,你可以使用 volta install npm 和 volta install Yarn 分别选择 npm 和 Yarn 包管理器的版本。这些工具将使用您选择的 Node 的默认版本运行.
使用 Volta,使用包管理器全局安装命令行工具也会将其添加到工具链中。例如, vuepress 包包含一个同名的可执行文件
yarn global add vuepress
当您将一个包安装到工具链上时,Volta 会获取当前的默认 Node 版本,并将该工具固定到该引擎上(有关更多信息,请参阅 包二进制文件 )。 Volta 不会改变工具的固定引擎,除非你更新工具,无论如何。这样,您就可以确信您安装的工具不会在您背后更改.
Volta 允许团队或协作者社区标准化他们在项目中使用的开发工具.
volta pin 命令允许您为项目选择 Node 引擎和包管理器版本
volta pin node@12.20
volta pin yarn@1.19
Volta 会把这个放在你的 package.json,这样你就可以把你选择的工具提交到版本控制
"volta": {
"node": "12.20.2",
"yarn": "1.19.2"
}
这样,每个使用 Volta 在项目上工作的人都会自动获得您选择的相同版本.
node --version # 12.20.2
yarn --version # 1.19.2
node 和包管理器可执行文件并不是工具链中唯一的智能工具:工具链中的包二进制文件也知道您的当前目录,并尊重您所在项目的配置.
例如,安装 Typescript 包会将编译器 tsc 添加到你的工具链中
npm install --global typescript
根据你所在的项目,这个可执行文件会切换到项目选择的 TypeScript 版本
cd /path/to/project-using-typescript-3.9.4
tsc --version # 3.9.4
cd /path/to/project-using-typescript-4.1.5
tsc --version # 4.1.5
因为 Volta 的工具链总是跟踪你在哪里,它确保你使用的工具总是尊重你正在做的项目的设置。这意味着您不必担心在项目之间切换时更改已安装软件的状态.
更重要的是,当 Volta 运行一个工具时,它会覆盖它的轨迹,确保你的 npm 或 Yarn 脚本永远不会看到你的工具链中有什么.
这两个特性的结合意味着 Volta 解决了 全局包的问题 。换句话说,Volta 为您提供了全局包安装的便利,但没有危险.
例如,你可以使用 npm i -g typescript 安全地安装 TypeScript,并享受直接调用 tsc 的便利无需担心项目的包脚本可能意外地依赖于您的机器的全局状态.
对 pnpm 的支持目前是实验性的。要启用该功能,请确保环境变量 VoLTA_FEATURE_PNPM 设置为 1 。在 Windows 上可以添加到环境变量中。在 Linux/Mac 上,您可以在配置文件脚本中设置该值(例如 .bash_profile 、 .zshrc 或类似的脚本).
已知的限制 :
全局安装 :目前不支持全局安装(例如 pnpm install -g),并且会导致错误.
迁移 :目前还没有自动迁移功能,因此如果您以前将 pnpm 作为 Volta 全局文件安装,则需要通过调用 Volta install pnpm 手动重新安装它。在启用支持并重新安装之前,您可以通过 volta uninstall pnpm 卸载之前安装的 pnpm 包。一旦切换到本机 pnpm 支持,由于目前缺乏卸载实现,可能无法通过调用相同的命令来删除孤立的旧 pnpm 包.
Volta 1.1.1
The JavaScript Launcher ⚡
To install a tool in your toolchain, use `volta install`.
To pin your project's runtime or package manager, use `volta pin`.
USAGE:
volta [FLAGS] [SUBCOMMAND]
FLAGS:
--verbose Enables verbose diagnostics
--quiet Prevents unnecessary output
-v, --version Prints the current version of Volta
-h, --help Prints help information
SUBCOMMANDS:
fetch Fetches a tool to the local machine
install Installs a tool in your toolchain
uninstall Uninstalls a tool from your toolchain
pin Pins your project's runtime or package manager
list Displays the current toolchain
completions Generates Volta completions
which Locates the actual binary that will be called by Volta
setup Enables Volta for the current user / shell
run Run a command with custom Node, npm, pnpm, and/or Yarn versions
help Prints this message or the help of the given subcommand(s)
volta fetch 将工具缓存到本地机器以供离线使用 。
volta install 设置工具的默认版本 。
volta uninstall 从工具链中卸载工具 。
volta pin 固定项目的运行时或包管理器 。
volta list 显示当前工具链 。
volta completions 命令补全 。
volta which 查看 volta 安装的工具的目录 。
volta setup 为当前用户/shell 启用 volta 。
volta run 运行带有自定义Node、npm、pnpm和/或Yarn版本的命令 。
volta help 输出帮助信息 。
如果你在工作中遇到有多个项目使用不同版本的 nodejs,就来试试 Volta 吧! 。
最后此篇关于比nvm更好用的node版本管理工具的文章就讲到这里了,如果你想了解更多关于比nvm更好用的node版本管理工具的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我会尽可能地解释我正在做的事情,以获得最好的可能的建议/解决方案。这一切都是在 java 中完成的。 我的客户有一个基于 SWING 的桌面应用程序,它将使用 WebStart 加载。我被指派为用户帐
看来这个page包含 Azure CLI 支持的与 Azure API 管理相关的所有功能。但它没有展示如何使用 Azure CLI 管理用户、产品、证书、订阅和 API 等实体。 Azure CLI
我设置了一个 Hadoop 1.2.x 版本,双节点集群。第一节点(NameNode、Jobtracker)和第二节点(Secondary NameNode、Datanode、TaskTracker)
对于内容驱动的网站,设计好坏的关键是关系型数据库。在这个教程中,我们已经使用了MySQL关系型数据库管理系统(RDBMS)建立了我们的数据库。对于网站的开发者来说,MySQL是一个较受欢迎的选择,这
在尝试运行MariaDB之前,首先确定其当前状态,运行或关闭。 有三个选项用于启动和停止MariaDB – 运行mysqld(MariaDB脚本)。 运行mysqld_safe启动脚本。
我在管理界面中遇到 StackedInlines 前缀的问题。我会尝试发布所有必要的代码。 models.py(简要) ##### Base classes class BaseItem(models
我是新来的。到目前为止,我一直在使用 MVC 模型并使用基本的 session 管理模型,即在 session 中存储一个 token 并检查每个请求。 我正在尝试对lift做同样的事情,但我的 se
我在 win 服务中使用 NHiberante。有时我得到 System.ObjectDisposedException: Session is closed! Object name: 'ISess
我正在尝试使用 HtmlUnit 登录 Facebook 页面并查看其 HTML 内容。我正在尝试通过 HtmlUnit 填写登录凭据,但在单击提交按钮时我没有看到正在执行的 session 。 在
我正在为一个相当大的项目开发一个带有 reactjs 的前端,该项目有两个主要接口(interface)。主站点的前端和管理员的前端。 我应该将它们开发为两个不同的项目还是 reactjs 中的一个项
短版 我有一个使用插件基础结构的应用程序。插件具有可配置的属性,可帮助它们了解如何完成工作。插件按配置文件分组以定义如何完成任务,配置文件存储在由 DataContractSerializer 序列化
如何管理 iPhone 应用程序中的用户 session ?我在应用程序的第一页上从用户那里获取了用户名和密码。用户可以随时注销。如何像其他 Web 应用程序一样在 iPhone 应用程序中存储 se
我正在使用 Azure API 管理,其中包含第三方论坛 (Discourse) 的链接。 api管理提供的默认登录系统用于注册用户。我想知道是否可以对 api 管理和论坛使用单点登录,这样用户就不必
我正在使用 Wordpress 建立一个网站,并且我想利用它的 session 。但我没有找到任何插件,甚至文档。在我开始破解之前有什么建议或引用吗? 注意:我问的是 WP 是否以及如何使用标准 PH
我已阅读《Azure in Action》一书中的以下内容:“在 Windows Azure 中,状态服务器或进程外 session 状态提供程序,不支持” 谁能告诉我为什么不支持这个。他们在书中没有
我有一个内联表单集,我想排除一些模型对象在表单集中显示。 例如。模型 B 具有模型 A 的外键,因此它是 1:n(A 对象有许多 B 对象)关系。现在在 A 管理编辑页面上,我已经获得了 B 的内联。
我正在开发一个基于 session 的项目。我在想,与银行类似,我会创建一张支票并为用户提供阻止 session 超时的能力。 我正在考虑创建一个 setInterval 来检查需要身份验证的空白页面
我正在为一位拥有 Magento 商店的客户工作。里面塞满了产品,但这些产品的名称有点乱。他并没有坚持一种命名约定,而是多年来使用了不同的约定。因此,每当他使用“管理”->“管理产品”部分中的“名称”
我使用大约十几个 XSLT 文件来提供大量输出格式。目前,用户必须知道导出的文件格式的扩展名,例如RTF、HTML、TXT。 我还想使用参数来允许更多选项。如果我可以将元数据嵌入 XSL 文件本身,那
我已阅读《Azure in Action》一书中的以下内容:“在 Windows Azure 中,状态服务器或进程外 session 状态提供程序,不支持” 谁能告诉我为什么不支持这个。他们在书中没有
我是一名优秀的程序员,十分优秀!