在 Heroku 上部署快速应用程序错误:找不到模块"/应用程序/服务器.js"



我一直在尝试在Heroku上部署我的Express应用程序,并且构建成功创建,但是当我试图打开它时,我收到一个错误消息,基本上表示该页面无法提供服务。

所以,我运行heroku logs --tail,然后我得到以下错误消息:

一半的错误信息

剩余的一半错误信息

文件树

Procfile

web: node server.js

Package.json

{
"name": "conduit-api",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"start": "node server.js"
},
"author": "",
"license": "ISC",
"dependencies": {
"bcrypt": "^5.0.1",
"body-parser": "^1.19.0",
"cors": "^2.8.5",
"express": "^4.17.1",
"jsonwebtoken": "^8.5.1",
"nodemon": "^2.0.12",
"pg": "^8.7.1",
"pg-hstore": "^2.3.4",
"redux-persist": "^6.0.0",
"sequelize": "^6.6.5"
},
"devDependencies": {
"cross-env": "^7.0.3"
}
}

server.js

const express = require('express');
const bodyParser = require('body-parser');
const cors = require('cors');
const { sequelize } = require('./src/entities/User/User');
const db = require('./src/config/Database');
const feedRoute = require('./src/routes/Feed/Feed');
const usersRoute = require('./src/routes/Users/Users');
const userRoute = require('./src/routes/User/User');
const articlesRoute = require('./src/routes/Articles/Articles');
const profilesRoute = require('./src/routes/Profiles/Profiles');
const commentsRoute = require('./src/routes/Comments/Comments');
const app = express();
app.use(cors());
app.use(bodyParser.json());
//  Routes
app.use('/api/feed', feedRoute);
app.use('/api/users', usersRoute);
app.use('/api/user', userRoute);
app.use('/api/articles', articlesRoute);
app.use('/api/profiles', profilesRoute);
app.use('/api/articles', commentsRoute);
// REQUESTS
app.get('/', async (req,res) => {
res.json('Yooooooooooo')
try {
await db.authenticate();
console.log('Connection has been established');
} catch(err) {
console.log('Error');
}
})
// To START sequelize and also wipes the DB clean
// async function main() {
//     await sequelize.sync({force: true})
// }
// main()
// TO START sequelize 
const PORT = process.env.PORT || 3000;
app.listen(PORT , () => {
console.log(`App is listening to ${PORT}`);
})

我已经尝试修改我的配置文件和删除和重新安装模块,但问题仍然存在。

我已经被困在这个问题上好几天了,任何形式的帮助都将是非常感激的。

看起来你的问题是你在package.json中指向一个不存在的文件。

Package.json

"main": "index.js"

您的应用程序似乎从您的server.js文件部署。

main字段是一个模块ID,它是程序的主要入口点。根据文档:https://docs.npmjs.com/cli/v7/configuring-npm/package-json#main

最新更新