使用 nvm 时管理全局 npm 包

2024-02-03

我觉得我需要能够将全局 npm 包单独安装到 NVM 目录中。

$ nvm install v0.11
######################################################################## 100.0%
Now using node v0.11.16
$ node-inspector
Node Inspector v0.9.2
Visit http://127.0.0.1:8080/debug?port=5858 to start debugging.

我的节点检查器停止工作了!

$ npm update -g
<bunch of updating, succeeds>

也许这会有所帮助...不!还是坏了。 叹。也许...node-inspector 不适用于 v0.11.16(在 nvm 上运行)。也许。谁知道。好吧,是时候放弃了。

$ nvm use system
Now using system version of node: v0.10.32.
$ node-inspector --version
dyld: lazy symbol binding failed: Symbol not found: _node_module_register
  Referenced from: /usr/local/lib/node_modules/node-inspector/node_modules/ws/build/Release/bufferutil.node
  Expected in: dynamic lookup

dyld: Symbol not found: _node_module_register
  Referenced from: /usr/local/lib/node_modules/node-inspector/node_modules/ws/build/Release/bufferutil.node
  Expected in: dynamic lookup

[1]    93845 trace trap  node-inspector --version

好吧……好吧……妈的。

所以无论如何,目前我并不是在寻找有关如何修复的说明。我很可能会被浇灭。这里的主要问题是我应该做什么来管理这些 npm 包,这些包是命令行工具,并且编译了与特定版本相关的组件?据我了解,当我安装 nvm 并将其合并到我的系统中时,我的 shell 能够切换其$PATH这样当我打电话时node and npm,它们将使用我选择的节点版本运行。

但似乎全局 npm 包被放入/usr/local/bin/在某个地方,他们只是被困在那里,无法跟随我所做的事情nvm-- 虽然“理论上表现良好的节点包”可能并非如此,但在实践中(对于类似node-inspector至少)它看起来确实很容易在不使用安装它的节点执行时爆炸。

与此同时我基本上必须npm remove -g <package> && npm install -g <package>每次我想在新的节点版本下运行该包时,我发现的任何包都会以这种方式表现奇怪nvm.

这似乎是错误的。

这是错的吗?

而且,一个推论是,每次我调用 nvm powers 使用不同版本的 Node 来测试某个给定的 Node.js 应用程序时,我几乎应该通过将其克隆到一个全新的目录中并重新开始来实现,因为否则我可能会发现我需要rm -rf node_modules && npm install只是为了让它发挥作用......


2020 年 10 月更新:

如果您已经安装了所需的 Node 版本,根据文档,这也是可用的:

nvm reinstall-packages <from-version>

道具@rashi https://stackoverflow.com/users/2079764/rashi用于指出上面的语法。


来自 nvm 帮助消息:

nvm install [-s] <version>                Download and install a <version>, [-s] from source. Uses .nvmrc if available
    --reinstall-packages-from=<version>     When installing, reinstall packages installed in <node|iojs|node version number>
    --lts                                   When installing, only select from LTS (long-term support) versions
    --lts=<LTS name>                        When installing, only select from versions for a specific LTS line

相关标志是--reinstall-packages-from=<version>。简单地重新运行你的命令(例子):

$ nvm install v6.9.2 --reinstall-packages-from=v4.4.5
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 nvm 时管理全局 npm 包 的相关文章

  • 如何使用 Jade 迭代数组创建 html 表

    我从 Node ExpressJS 框架开始 遇到了这个我无法解决的问题 我正在尝试显示一个包含一些博客文章的表格 是的 一个博客 但我没有完成 这是 Jade 模板代码 div table thead tr th Posts tbody
  • Dialogflow 简单的授权方法

    是否存在将 Dialogflow 代理连接到的简单方法node js代码 当我将此代码与从 Dialogflow 代理的设置页面获取的正确项目 ID 一起使用时 出现以下错误 错误 获取应用程序默认凭据时出现意外错误 无法加载默认凭据 浏览
  • 喜欢和不喜欢用户对产品的评论

    用户架构 var UserSchema new Schema review likes type String review dislikes type String 审查架构 var ReviewSchema new Schema pro
  • mocha.opts 已弃用,如何迁移到 package.json?

    我正在开发一个大型项目 自从上周我更新了摩卡以来 现在我们收到警告 DeprecationWarning 通过 mocha opts 进行的配置已被弃用并且 将从 Mocha 的未来版本中删除 使用 RC 文件或 改为 package js
  • Strongloop 环回 如何使用路由进行静态服务?

    我想做类似的事情 server js app use client loopback static dirname client using middleware json 但该示例仅适用于根 files loopback static p
  • 异步减少返回承诺

    我有一个对象数组 我必须为来自异步函数的每个对象添加一个属性 我正在执行 Array reduce 来迭代每个元素并仅返回一个结果 具有新属性的一个对象数组 我有这个 const res await resultOne reduce asy
  • sails.js 水线嵌套填充查询

    我有一个返回对象的多个结果的查找查询 该对象包含一个包含另一个模型的模型 问题是水线不支持嵌套填充 因此它填充第一个模型 但不填充它的内部模型 我见过的所有示例都是针对 findOne 查询的 我正在寻找一种方法来解决返回多个结果的查找查询
  • 阻止 Mongoose 为子文档数组项创建 _id 属性

    如果您有子文档数组 Mongoose 会自动为每个子文档创建 id 例子 id mainId subDocArray id unwantedId field value id unwantedId field value 有没有办法告诉 M
  • 如何在nodejs中使用crypto.randomBytes使用async/await?

    const crypto require crypto async function getKey byteSize let key await crypto randomBytes byteSize return key async fu
  • 对自定义打字稿错误实例实施instanceof检查?

    打字稿有这个instanceof 检查自定义错误 https github com Microsoft TypeScript issues 13965问题 但尚不清楚我们需要做什么才能得到instanceof在职的 例如对于这个异常我们如何
  • 茉莉花节点没有输出

    我是 JavaScript Node js 和 jasmine 的新手 我正在尝试运行 Node Craftsman Book 一书中的测试 FilesizeWatcher 我创建了 package json 文件并运行 npm insta
  • “brew升级节点”后“node -v”显示错误版本

    我升级了 Node js 版本brew upgrade node其中安装了v5 3 0 但是当我得到节点的版本时node v它显示 v0 10 29 I tried brew link overwrite node但这没有用 Brew 已链
  • 使用 dnode 从服务器向客户端发送消息

    几个月前 我发现了 nowjs 和 dnode 并最终使用了 nowjs 并且https github com Flotype nowclient https github com Flotype nowclient 用于客户端 服务器双向
  • Node.js 请求随机开始挂起,直到服务器重新启动后才会清除

    我在我们的网络应用程序上遇到了一个非常奇怪且看似随机的问题 我似乎无法成功调试 它可以正常运行 10 分钟到 6 小时 然后突然无法向服务器发出或从服务器发出远程请求 它们只是挂起 这包括常规的 http 和 Web 套接字请求 奇怪的是
  • Angular 和 Node JS 中的路由问题 [Angular]

    我有角度js的问题 我创建了 login html 和 home html 成功登录后我想将页面更改为 home html 我的路由不起作用 默认 url 是 localhost angular 我尝试路由 realpath 即 local
  • NPM:切勿为 npm 包安装嵌套的可选依赖项

    我正在编写一个包 A 我想将其发布到 NPM A 依赖于包 B 而包 B 又依赖于包 C 然后 C 有两个可选的本机依赖项 D 和 E 我明确知道我没有使用可选依赖项 D 和 E 并且永远不想当有人安装我的软件包时尝试安装它们 我知道你可以
  • 设置缩略图内容类型

    我需要设置Content Type对于缩略图 我已经尝试如下所示 但它不起作用 仍然 它存储为流 天青功能 索引 json var Jimp require jimp module exports context myBlob gt Rea
  • 如何按单个整数字段对 JSON 进行排序? [复制]

    这个问题在这里已经有答案了 我有以下 JSON title title order 0 order 9 order 2 JSON 包含很多字段 我如何根据字段对它们进行排序order field 我一直在寻找 Nodejs 中内置的东西 但
  • Node.js 中的startsWith:类型错误:未定义不是函数

    我在 Node js 中使用startsWith 时遇到错误 脚本sw js startswith var str Sein oder nicht sein dass ist hier die Frage console log str s
  • 在 AWS Lambda 中共享代码

    在 AWS Lambda 函数之间共享代码的首选方式是什么 我有这样的结构 functions a 节点模块 index js 包 json b 节点模块 index js 包 json c 节点模块 index js 包 json 这让每

随机推荐

  • 如何使用 Django 创建三重联接表

    使用 Django 的内置模型 如何在三个模型之间创建三重连接 例如 用户 角色和事件是模型 用户有很多角色 角色有很多用户 多对多 事件有许多用户 用户也有许多事件 多对多 但对于任何给定的事件 任何用户可能只有一个角色 如何在模型中表示
  • 必需的字段验证在 JQuery Popup MVC 4 中不起作用

    我有 JQuery 弹出窗口 我想在其上放置必需的字段验证 为此 我在模型中设置了必需的属性 并在视图中为它们设置了验证消息 但所需的字段验证不适用于弹出窗口 必需的字段验证在 JQuery 弹出窗口以外的表单上运行良好 请指导我应该如何解
  • Google 计算引擎 (GCE) 电子邮件传送解决方案?

    我刚刚在 Google Compute Engine 上设置了几个实例 但由于 GCE 阻止了端口 25 465 和 587 上的出站连接 因此电子邮件发送系统出现了问题 GCE 提 供详细解决方案 https developers goo
  • 如何从 C++ 更改 Windows 闪烁光标形状?

    如何将 Windows 闪烁光标形状从默认的垂直 更改为水平 如 dos 中使用的 有没有一些好的功能可以解决这个问题 OS win7 这实际上被称为caret 而不是一个cursor 这可能就是混乱的根源 也是为什么寻找解决方案没有产生太
  • 如何添加与夏令时时区相关的每周时间增量

    我想向本地化日期时间对象添加或减去周 或天 月或年 问题是 由于夏令时时区 这种天真的方法会导致 1 小时轮班 2014 03 27 12 00 就在冬令时转夏令时之前 例如 如果我向欧洲 柏林时区本地化的日期添加一周的时间增量 结果将是
  • 自动夹具奇怪的错误

    我收到这个错误 Ploeh AutoFixture Kernel IllegalRequestException 对 IntPtr 的请求是 检测到 这是不安全的资源 如果使用的话 进程会崩溃 所以请求被拒绝 普通的 IntPtr请求的来源
  • 在 WiX Burn 自定义托管引导程序中将 WIC 添加为 .NET 4.0 之前的要求

    我在获取包含自定义托管引导程序应用程序的刻录包以在某些不附带 Windows 成像组件的平台上启动时遇到问题 而安装 NET 4 0 需要使用该组件 Windows 2003 就是其中之一 我们使用标准方法来定义托管引导程序应用程序所需的内
  • 如何在php代码中嵌入html文件?

    我有很多 html 文件 现在我想使用一些 php 代码一一调用每个文件 但每当我尝试运行 php 代码来从文件夹中调用这些 html 文件时 它都不起作用 1 html view 2 html view 3 html view 因此 1
  • 无法将 Ribbon TextBox isEnabled 设置为 False

    我一直在尝试功能区控件并遇到可能的错误 或者我可能做错了什么 如果我有一个RibbonTextBox on the RibbonTab 并设置已启用 to False or True在代码后面 我只能将其设置为 false 而不能设置为 t
  • 无法使用L SDK的部分功能

    我正在尝试在新的 SDK 中使用新的活动转换 我尝试了这一行 getWindow requestFeature Window FEATURE CONTENT TRANSITIONS 但问题是Window不包括FEATURE CONTENT
  • Python 3.5 中的注释给出 unicode 错误

    我使用的是 Spyder IDE Python 3 5 它是 anaconda 发行版的一部分 下面给出了代码的前几行 coding utf 8 Created on Tue Sep 20 16 22 40 2016 author pava
  • 在后台线程上保存到 CoreData Context

    我已经为此苦苦挣扎了一段时间 苹果的文档和 SO 到目前为止没有帮助 我在 UIManagedDocument 上使用 ManagedObjectContext 并且下面的代码工作正常 然后我决定在 AppDelegate 中使用 Appl
  • 如何使用 RegEx 匹配方括号文字?

    匹配方括号的正则表达式是什么 我在用着 在一个模式中eregi replace 但似乎找不到 是正确的 但请注意 PHP 本身也有 作为转义字符 所以您可能必须使用 或不同类型的字符串文字
  • 帮助树递归

    我有一个 Person 类 我想创建一棵树 这是 Person 类的构造函数 public Person String name int age char gender Person c1 Person c2 c1 是左边的孩子 c2 是右
  • 在 Rails 中动态插入参数到 link_to

    在我的主页中 我有一个输入框 用户可以输入搜索查询 然后我有一个 link to 它将使用搜索查询向不同的页面 搜索页面 发出 get 请求 根据设计 我无法使用 Rails form for 在检测到输入框中的更改后 如何将查询动态插入到
  • 从 Pandas 数据框中的值中删除反斜杠

    我有一个包含反斜杠的 Pandas 数据框 我想去掉那些反斜杠 但我无法让替换功能工作 这就是我正在做的 df pd DataFrame data col1 a b ab col2 c cd df replace to replace va
  • 如何从 YouTube 上的多个视频 ID 创建播放列表?

    我有大量视频 ID 200 多个 我想使用所有视频 ID 创建一个 YouTube 播放列表 我从这里尝试了解决方案 https webapps stackexchange com questions 120451 how to creat
  • 处理分配问题的算法

    我需要一种算法 技术或任何指导来优化以下问题 我有两家公司 A公司有员工324人 B公司有员工190人 员工总数 A B 是514 我需要随机选择28 这 514 名员工中 好的 那么我们就这样做吧 514 的 28 是 143 92 哦
  • 更新 mac 上的 php 版本

    我想更新 php 版本 目前我有 5 5 38 我想要 7 1 到目前为止我尝试的是使用这个命令 curl s https php osx liip ch install sh bash s 7 1 我尝试了几个不同的版本 但没有一个有效
  • 使用 nvm 时管理全局 npm 包

    我觉得我需要能够将全局 npm 包单独安装到 NVM 目录中 nvm install v0 11 100 0 Now using node v0 11 16 node inspector Node Inspector v0 9 2 Visi