当前位置: 首页 > 面试题库 >

已安装全局NPM软件包,但找不到命令

甄文彬
2023-03-14
问题内容

我已经通过命令行在全球范围内安装了两个npm软件包“下载”和“
enigmavirtualbox”

npm install -g downloadnpm install -g engimavirtualbox

我试图在批处理文件中使用它们,以从我的节点项目中捆绑一个.exe文件。对于这两种命令,这些命令都会npm list -g <packagename>产生各自的版本输出,而与当前工作目录无关。

但是,在我的批处理脚本中,找不到命令“下载”和“ enigmavirtualbox”。

运行npm root -gyield
C:\Users\<username>\AppData\Roaming\npm\node_modules并查看该文件夹的内部,我可以看到两个软件包的文件夹都存在。

我尝试过的

  • 更改npm root描述在这里
  • 卸载并重新安装软件包
  • 添加环境。变量NODE_PATH指向C:\Users\<username>\AppData\Roaming\npm\node_modules
  • 添加C:\Users\<username>\AppData\Roaming\npm\node_modules到PATH环境。变量

相同的设置可以在我的第二台计算机上运行(都运行Win7 64bit)。我的节点安装有问题吗,或者我做错了什么?


问题答案:

可执行文件的二进制文件和.cmd文件最后出现C:\Users\<username>\AppData\Roaming\npm(末尾减去node_modules),因此将该路径添加到PATH环境中。变量解决了这个问题。



 类似资料:
  • 我已经通过命令行在全球范围内安装了两个npm软件包“下载”和“enigmavirtualbox”: 和 我正试图在批处理文件中使用它们来捆绑单个文件。我的节点项目中的exe文件。对于这两个命令,命令

  • 问题内容: 我写了一个模块,我刚才将其发布到npm(https://npmjs.org/package/wisp) 因此,可以从命令行进行安装: 但是,当我从命令行运行它时,我不断收到未安装乐观主义者的错误消息: 但是,我在package.json中指定了依赖性: 有谁知道该怎么做才能使它运行?我知道它与bin部分有关,将可执行文件添加到bin中,该目录中的node_modules为空。不知道如何

  • 我写了一个模块,不久前发布到npm(https://npmjs.org/package/wisp) 所以它可以从命令行安装: 但是,当我从命令行运行它时,我不断收到一个错误,即未安装optimist: 但是,我在package.json中指定了依赖项: 有人知道该怎么做才能让它运行吗?我知道这与bin部分将可执行文件添加到bin以及该目录中的node_模块为空有关。不知道如何解决这个问题。

  • 问题内容: 如何找到已安装的node.js / npm 软件包 的版本? 这将打印npm本身的版本: 这将显示一个神秘的错误: 这将 在注册表上 打印软件包版本(即可用的最新版本): 如何获得已 安装的版本 ? 问题答案: 用于本地软件包或全局安装的软件包。 您可以通过传递特定软件包的名称作为参数来查找其版本。例如,将导致: 或者,您可以直接运行而无需将软件包名称作为参数来查看所有软件包的版本:

  • 问题内容: 运行时,它将软件包安装在我的用户/ AppData / Roaming / npm / npm_modules /文件夹中。该子文件夹不在我的PATH中,因此,如果我尝试运行该程序包而不显式调用整个路径,则调用失败,并显示一个 我该怎么做才能解决此问题? 谢谢 问题答案: 我使用的是win8.1,发现nodejs安装程序未将全局节点模块的路径添加到系统PATH。只需添加到 用户变量 (

  • 问题内容: 我在Windows7上安装grunt,node,npm,bower和grunt-cli。 说明说我应该为全局运行带有-g标志的安装命令。 安装后如何检查是否使用了-g标志。卸载它们并重新安装将花费大量时间。 问题答案: 使用带有标志的命令来查看全局安装的所有软件包: 要检查是否在全球范围内安装了特定的软件包,可以提供软件包的名称(在这种情况下),如下所示: 或者您可以使用来过滤软件包名