Node PKG模块无法将“ sequelize”识别为内部或外部命令

时间:2019-06-04 09:02:56

标签: node.js sqlite sequelize-cli

我尝试打包使用sqlite ans sequelize的应用程序。我的包json是这样的:

"dependencies": { "@types/bluebird": "^3.5.26", "@types/libxmljs": "^0.18.3", "@types/node": "^11.12.1", "@types/restify": "^7.2.9", "@types/restify-errors": "^4.3.3", "@types/uuid": "^3.4.4", "@types/validator": "^10.11.0", "@types/ws": "^6.0.1", "better-queue": "^3.8.10", "data-store": "^3.1.0", "libxmljs": "^0.19.5", "pkg": "^4.3.7", "restify": "^8.2.0", "sequelize": "^5.8.7", "sequelize-cli": "^5.4.0", "sqlite3": "^4.0.8", "typescript": "^3.3.4000", "uuid": "^3.3.2", "winston": "^3.2.1", "ws": "^6.2.1", "yamljs": "^0.3.0" }, "pkg": { "assets": [], "scripts": [ "build/*.js", "build/routes/*.js", "build/**/*.js", "node_modules/sequelize/*.js", "node_modules/sequelize/**/*.js", "node_modules/sqlite3/lib/*.js", "node_modules/sqlite3/*.js*", "node_modules/node-pre-gyp/lib/*.js", "node_modules/node-pre-gyp/lib/util/*.js*" ] }, "bin": "build/main.js",

我的Main.js是:

function initializeDB() {
// Return new promise 
return new Promise(function (resolve, reject) {
    // Do async job
    console.log("returning promise");
    resolve(1);
})

}

initializeDB()
// Perform DB migrations and seeders
.then(() => {
    console.log("sequelize db:migrate");
    // Require dbconfig so that the correct .env file is picked up before we try and update any databases and cached.
    return exec.execSync("echo 'pooja' && sequelize db:migrate", { stdio: 'inherit' })
})
// Start Server
.then(() => {
    console.log("Staring server");
    require('./server.js')
})
.catch((err) => {
    console.log('Error: ' + err)
    process.exit(1)
})

此外,我用于打包应用程序的命令是:

pkg . --targets latest-win-x64

这是我的app.exe放在同一文件夹中,我可以运行。当我将exe复制到其他文件夹时,出现错误消息:

E:\SOME_OTHER_DIR>APP.exe returning promise sequelize db:migrate 
'sequelize' is not recognized as an internal or external command, operable program or batch file. 
Error: Error: Command failed: sequelize db:migrate

请让我知道如何使app.exe与sqlite一起工作并进行续集。我也尝试将“ node_sqlite3.node”也复制到其他文件夹。

0 个答案:

没有答案