Node.js Nodejs嵌套本机模块安装

Node.js Nodejs嵌套本机模块安装,node.js,module,installation,npm,node-gyp,Node.js,Module,Installation,Npm,Node Gyp,我有一个web应用程序,它的简化结构如下所示 . ├── app.js ├── native_modules │   └── my_module_addon │   ├── binding.gyp │   ├── index.js │   ├── node_modules │   ├── package.json │   ├── my_module_addon.cc ├── node_modules ├── package.json 我开发了本机模块插件

我有一个web应用程序,它的简化结构如下所示

.
├── app.js
├── native_modules
│   └── my_module_addon
│       ├── binding.gyp
│       ├── index.js
│       ├── node_modules
│       ├── package.json
│       ├── my_module_addon.cc
├── node_modules
├── package.json
我开发了本机模块插件并将其链接。 我希望在从repo获取项目后,只需调用npm,然后自动调用node gyp rebuild,就可以轻松地安装我的本机插件

npm install
我的app package.json:

{
  "name": "MyWebApp",
  "version": "0.0.0",
  "private": true,
  "scripts": {
    "start": "node ./bin/www"
  },
  "dependencies": {
    "body-parser": "~1.13.2",
    "express": "~4.13.1",
    "my_module_addon": "file:./native_modules/my_module_addon"
  }
}
{
  "name": "scs3reader_addon",
  "version": "1.0.0",
  "description": "My Awesome Addon",
  "main": "index.js",
  "scripts": {
    "install": "node-gyp rebuild"
  },
  "license": "MIT",
  "dependencies": {
    "bindings": "^1.2.1",
    "nan": "^2.2.0"
  },
  "gypfile": true
}
和my module package.json:

{
  "name": "MyWebApp",
  "version": "0.0.0",
  "private": true,
  "scripts": {
    "start": "node ./bin/www"
  },
  "dependencies": {
    "body-parser": "~1.13.2",
    "express": "~4.13.1",
    "my_module_addon": "file:./native_modules/my_module_addon"
  }
}
{
  "name": "scs3reader_addon",
  "version": "1.0.0",
  "description": "My Awesome Addon",
  "main": "index.js",
  "scripts": {
    "install": "node-gyp rebuild"
  },
  "license": "MIT",
  "dependencies": {
    "bindings": "^1.2.1",
    "nan": "^2.2.0"
  },
  "gypfile": true
}
要链接我的本机插件,我将其添加到依赖项

"my_module_addon": "file:./native_modules/my_module_addon"
当我调用npm install on web app时,问题出现了。我安装了所有模块并执行了node gyp,但不知道为什么本机插件没有生成文件夹和输出文件

> node-gyp rebuild

  CXX(target) Release/obj.target/my_module_addon/my_module_addon.o
  SOLINK_MODULE(target) Release/my_module_addon.node
my_module_addon@1.0.0 node_modules/my_module_addon
├── bindings@1.2.1
└── nan@2.2.0

您有用于本机模块的git repo吗?如果是,请尝试这种依赖关系样式

"my_module_addon": "git+ssh://admin@mydomain.com/~/repos/my_module_addon"
这应该可以与
npm安装一起正常工作