2016-03-10 92 views
0

當運行NPM安裝我得到的警告消息:警告節點顯示錯誤的節點版本。它會導致sqlite3錯誤?

npm WARN engine [email protected]: wanted: {"node":">= 0.2.9 < 0.7.0"} (current: {"node":"0.12.2","npm":"2.7.4"}) 

但在的package.json中指定節點5.3.0(請參見下文) 爲什麼消息告訴我的版本0.12時電流版本是5.3? 難道是sqlite3錯誤的情況?我得到的消息:

Error: Cannot find module '...\node-v47-win32-x64\node_sqlite3.node' 
    at Function.Module._resolveFilename (module.js:326:15) 

但事實上NPM intall創建我節點 - V14 -win32-64不是節點 - V47 -win32-64目錄。

{ 
    "name": "aesku-hera", 
    "version": "0.0.0", 
    "private": true, 
    "scripts": { 
    "start": "supervisor ./bin/www" 
    }, 
    "engines": { 
    "node": "5.3.0", 
    "npm": "2.7.4" 
    }, 
    "dependencies": { 
    "body-parser": "^1.12.4", 
    "connect-busboy": "0.0.2", 
    "cookie-parser": "~1.3.5", 
    "debug": "~2.2.0", 
    "execsql": "0.0.3", 
    "express": "~4.12.4", 
    "gm": "^1.18.1", 
    "jade": "^1.9.2", 
    "jsonfile": "^2.2.3", 
    "module": "0.0.1", 
    "moment": "^2.10.3", 
    "morgan": "~1.5.3", 
    "multer": "0.1.6", 
    "node-hl7": "^0.1.3", 
    "node-json-db": "^0.6.3", 
    "node-mv": "^0.1.3", 
    "periodic-task": "^0.1.0", 
    "pg": "^4.4.0", 
    "request": "^2.58.0", 
    "serve-favicon": "~2.2.1", 
    "sqlite3": "^3.1.1", 
    "string": "^3.3.0" 
    } 
} 

回答

0

在你的package.json的engines部分就是它的發動機(如節點)的指標,你的代碼將工作的版本 - 見documentation瞭解更多詳情。

這很可能是您的本地安裝節點版本0.12。您應該將其升級到5.3.0或更高版本,然後嘗試重新安裝軟件包。

,可以快速使用命令來驗證您的節點版本 -

所有的

node -v

+0

首先,非常感謝您的回答。節點-v顯示v5.3.0 引擎部分是在heroku教程中進行修改的。它幫助我在設置正確版本後修復部署。 我不明白與版本混淆:npm安裝中顯示的節點0.12,安裝的sqlite3的v14和module.js和實際安裝的最終v5.3所需的v47。我應該卸載所有節點相關的東西,並再次安裝乾淨? –