node.js - Node js elementtree 需要 get 找不到模块 'sax'

标签 node.js module

我正在尝试在我的 Node JS 服务器中使用 elementtree 但是服务器启动时会生成以下消息

找不到模块“sax”

我必须从 zip 安装 elementree,我做错了什么?

这些是我的要求声明

var cache = require('./node_modules/node-cache');

var elementTree = require('./node_modules/node-elementtree');

这是我的文件夹结构

模块\node_modules\node-cache

模块\node_modules\node-elementtree

我的服务器js脚本位于\module

最佳答案

问题是因为您没有使用 npm 来安装 node-elementtree 模块

This是node-elementtree的package.json。并且明确提到了对sax 0.3.5的依赖

"dependencies" : {
    "sax": "0.3.5"
  }

如果您完成了npm install,它将解决您的依赖关系约束。

在你的node-elementtree模块中它使用sax here并且您的需求未解析为正确的模块。因此出现了错误。如果您无法使用 npm,那么如果可能的话也使用 zip 安装 sax,但这可能会再次增加您的依赖项列表,如上所述。所以,尝试解决 npm 问题

你也不需要使用

var cache = require('./node_modules/node-cache');
var elementTree = require('./node_modules/node-elementtree');

在你的代码中

var cache = require('node-cache');
var elementTree = require('node-elementtree');

上面就可以了。 Node 自动从 ./node_modules 目录甚至许多 more 中查找模块地点

关于node.js - Node js elementtree 需要 get 找不到模块 'sax',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11343419/

相关文章:

java - 为什么我无法在导入的模块中使用 Jython 类?

android - 从父 android 模块访问 Dagger 子组件依赖项

java - 检查从 Play 中的模块导入的所有 URI 的权限

node.js - 当调用在 for 循环中时,不会调用另一个 js 文件中的函数

mysql - 书架级联删除

javascript - 在node.js中使用tcp发送大文件但收到损坏的文件

node.js - 带有 NodeJS 的嵌入式 Elastic

node.js - 如何在 node.js 解析查询中设置 dns 服务器?

python - Python 是否导入模块路径中的所有模块?

c - 从用户空间与内核模块哈希表交互