我正在尝试将我编写的 Javascript 集成到 HTML 文件中。由于脚本需要 kafka-node 才能生成类似 this 的内容,我正在尝试使用 webpack 来捆绑所有内容。
我正在使用这个 getting started指导并使其适应我的具体情况。我唯一要更改的是 index.js
文件,将我的脚本放在那里,如下所示:
import _ from 'kafka-node';
document.write("Starting Javascript Kafka Consumer...");
var kafka = require('kafka-node'),
Consumer = kafka.Consumer,
client = new kafka.Client("127.0.0.1:2181"),
consumer = new Consumer( ...
...
我使用的配置文件与上述入门引用链接中发布的配置文件相同。
我确实运行了 npm install --save-dev webpack
和 npm install --save kafka-node
。这是我的输出:
./node_modules/.bin/webpack --config webpack.config.js
Hash: f2fd34c274324b3ac92a
Version: webpack 3.4.1
Time: 1475ms
Asset Size Chunks Chunk Names
bundle.js 1.48 MB 0 [emitted] [big] main
[6] (webpack)/buildin/global.js 509 bytes {0} [built]
[39] (webpack)/buildin/module.js 517 bytes {0} [built]
[69] ./src/index.js 890 bytes {0} [built]
[103] ./node_modules/optional 160 bytes {0} [optional] [built]
[112] ./node_modules/buffermaker ^.*BufferMaker$ 205 bytes {0} [built]
[122] ./node_modules/node-zookeeper-client/lib/jute 160 bytes {0} [built]
+ 139 hidden modules
WARNING in ./node_modules/node-zookeeper-client/lib/jute/index.js
771:20-47 Critical dependency: the request of a dependency is an expression
WARNING in ./node_modules/optional/optional.js
6:11-26 Critical dependency: the request of a dependency is an expression
ERROR in ./node_modules/kafka-node/lib/client.js
Module not found: Error: Can't resolve 'net' in '/home/work-xpandit/consumerJS/node_modules/kafka-node/lib'
@ ./node_modules/kafka-node/lib/client.js 3:10-24
@ ./node_modules/kafka-node/kafka.js
@ ./src/index.js
ERROR in ./node_modules/kafka-node/lib/kafkaClient.js
Module not found: Error: Can't resolve 'net' in '/home/work-xpandit/consumerJS/node_modules/kafka-node/lib'
@ ./node_modules/kafka-node/lib/kafkaClient.js 10:12-26
@ ./node_modules/kafka-node/kafka.js
@ ./src/index.js
ERROR in ./node_modules/kafka-node/lib/client.js
Module not found: Error: Can't resolve 'tls' in '/home/work-xpandit/consumerJS/node_modules/kafka-node/lib'
@ ./node_modules/kafka-node/lib/client.js 5:10-24
@ ./node_modules/kafka-node/kafka.js
@ ./src/index.js
ERROR in ./node_modules/kafka-node/lib/kafkaClient.js
Module not found: Error: Can't resolve 'tls' in '/home/work-xpandit/consumerJS/node_modules/kafka-node/lib'
@ ./node_modules/kafka-node/lib/kafkaClient.js 12:12-26
@ ./node_modules/kafka-node/kafka.js
@ ./src/index.js
ERROR in ./node_modules/node-zookeeper-client/index.js
Module not found: Error: Can't resolve 'net' in '/home/work-xpandit/consumerJS/node_modules/node-zookeeper-client'
@ ./node_modules/node-zookeeper-client/index.js 19:24-38
@ ./node_modules/kafka-node/lib/consumerGroupMigrator.js
@ ./node_modules/kafka-node/lib/consumerGroup.js
@ ./node_modules/kafka-node/kafka.js
@ ./src/index.js
ERROR in ./node_modules/node-zookeeper-client/lib/ConnectionManager.js
Module not found: Error: Can't resolve 'net' in '/home/work-xpandit/consumerJS/node_modules/node-zookeeper-client/lib'
@ ./node_modules/node-zookeeper-client/lib/ConnectionManager.js 8:10-24
@ ./node_modules/node-zookeeper-client/index.js
@ ./node_modules/kafka-node/lib/consumerGroupMigrator.js
@ ./node_modules/kafka-node/lib/consumerGroup.js
@ ./node_modules/kafka-node/kafka.js
@ ./src/index.js
ERROR in ./node_modules/node-zookeeper-client/lib/jute/index.js
Module not found: Error: Can't resolve 'fs' in '/home/work-xpandit/consumerJS/node_modules/node-zookeeper-client/lib/jute'
@ ./node_modules/node-zookeeper-client/lib/jute/index.js 14:9-22
@ ./node_modules/node-zookeeper-client/index.js
@ ./node_modules/kafka-node/lib/consumerGroupMigrator.js
@ ./node_modules/kafka-node/lib/consumerGroup.js
@ ./node_modules/kafka-node/kafka.js
@ ./src/index.js
ERROR in ./node_modules/buffermaker/test/BufferMaker.js
Module not found: Error: Can't resolve 'should' in '/home/work-xpandit/consumerJS/node_modules/buffermaker/test'
@ ./node_modules/buffermaker/test/BufferMaker.js 1:0-17
@ ./node_modules/buffermaker ^.*BufferMaker$
@ ./node_modules/buffermaker/index.js
@ ./node_modules/kafka-node/lib/protocol/protocol.js
@ ./node_modules/kafka-node/lib/protocol/index.js
@ ./node_modules/kafka-node/kafka.js
@ ./src/index.js
有什么想法吗?
最佳答案
此模块的测试编写方式取决于 should
作为 devDependency
。即使父项目处于开发模式,NPM 开发依赖项也不会安装在父项目中。只需运行:
npm i -D should
即使您不在项目中使用它。这为我解决了这个问题。我的项目有其他要求,例如已经安装了 Mocha。如果您丢失了更多,您可能需要对多个包裹执行此操作。
关于javascript - webpack 和 kafka-node 集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45332930/