问题描述
我已经使用Node存储库中的Embed_Test示例构建了Node的嵌入式实例。 使用这个实例,我试图执行一些C ++代码。 我有一个生成的.node和.dll,并且已经将我的Javascript文件打包了。 当我跑步时,
node dist/bundle.js
运行正常。但是,当我启动嵌入式NodeJS应用程序并尝试运行bundle.js时,出现以下错误(好像无法加载.node文件?):
TypeError: Cannot read property 'testCppCode' of undefined
at evalmachine.<anonymous>:154:2305
at s.handle_request (evalmachine.<anonymous>:120:782)
at s (evalmachine.<anonymous>:113:879)
at p.dispatch (evalmachine.<anonymous>:113:901)
at s.handle_request (evalmachine.<anonymous>:120:782)
at evalmachine.<anonymous>:106:2533
at Function.v.process_params (evalmachine.<anonymous>:106:3436)
at g (evalmachine.<anonymous>:106:2476)
at evalmachine.<anonymous>:259:218
at s.handle_request (evalmachine.<anonymous>:120:782)
这是我的App.js,之前是Webpack:
var myArgs = process.argv.slice(2);
var ip = myArgs.length >= 1 ? myArgs[0] : "localhost";
var port = myArgs.length >= 2 ? myArgs[1] : "5555";
var fs = require("fs");
var path = require("path");
const express = require("express");
var addon = require("../build/Release/test.node");
const server = express();
server.get("/",(req,res) => {
var res = addon.testCppCode("Sample",function (err,cpp) {
var capabilitiesResult = cpp;
if (err) {
console.log("Error!");
console.log(err);
console.log(cpp);
} else {
console.log("Success!");
}
});
});
我尝试将test.node和test.dll粘贴到与node的嵌入式实例相同的文件夹中,我尝试将其与webpack放在同一目录中,我尝试将其粘贴在相对位置dir到嵌入式节点(因此它位于../build/Release/)-但错误始终相同。我需要做什么才能使其“看到” .node文件?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)