node.js - Node 找不到模块 ~/package.json (已关闭)

标签 node.js windows npm git-bash

我正在尝试使用 Node 启动我的 API,但出现此错误:

$ node ./.local/start.js
module.js:549
    throw err;
    ^

Error: Cannot find module '/c/Users/$AAU000-TFETR2QTBK6P/Desktop/Stage/whasq-api-master/package.json'
    at Function.Module._resolveFilename (module.js:547:15)
    at Function.Module._load (module.js:474:25)
    at Module.require (module.js:596:17)
    at require (internal/module.js:11:18)
    at ConfigurationManager.getPackageConfig (C:\Users\$AAU000-TFETR2QTBK6P\Desktop\Stage\whasq-api-master\node_modules\@rduk\configuration\lib\manager.js:61:15)
    at getDocument (C:\Users\$AAU000-TFETR2QTBK6P\Desktop\Stage\whasq-api-master\node_modules\@rduk\configuration\lib\manager.js:74:31)
    at ConfigurationManager.getSection (C:\Users\$AAU000-TFETR2QTBK6P\Desktop\Stage\whasq-api-master\node_modules\@rduk\configuration\lib\manager.js:106:19)
    at ConfigurationManager.get (C:\Users\$AAU000-TFETR2QTBK6P\Desktop\Stage\whasq-api-master\node_modules\@rduk\configuration\lib\manager.js:93:25)
    at Object.<anonymous> (C:\Users\$AAU000-TFETR2QTBK6P\Desktop\Stage\whasq-api-master\index.js:14:38)
    at Module._compile (module.js:652:30)
    at Object.Module._extensions..js (module.js:663:10)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
    at Function.Module._load (module.js:497:3)
    at Module.require (module.js:596:17)
    at require (internal/module.js:11:18)

真正的问题是文件 package.json 存在..

ls -a (at ~/Desktop/Stage/whasq-api-master)
./  ../  .circleci/  .gitignore  .local/  api/  config/  ecosystem.config.js  index.js  lib/  node_modules/  package.json  package-lock.json  README.md  sf_certificate/  templatesES.md
//package.json content

{
  "name": "whasq-api",
  "version": "0.1.1",
  "description": "whasq-api",
  "engines": {
    "node": ">=8.11.1"
  },
  "main": "index.js",
  "scripts": {
    "pretest": "standard --fix",
    "test": "exit 0"
  },
  "author": "WhASQ",
  "license": "ISC",
  "dependencies": {
    "@rduk/configuration": "^2.2.3",
    "@rduk/errors": "^1.3.1",
    "@rduk/logger": "^1.0.3",
    "@rduk/logger-winston-loggly-factory": "0.1.0",
    "@rduk/logger-winston-provider": "^1.0.4",
    "@rduk/message-broker": "^2.4.0",
    "@rduk/provider": "^3.1.3",
    "@rduk/tasks-orchestrator": "^0.1.3",
    "aws-sdk": "^2.256.1",
    "axios": "^0.18.1",
    "bcrypt": "^3.0.4",
    "body-parser": "^1.18.2",
    "csv": "^3.1.0",
    "dotenv": "5.0.1",
    "elasticsearch": "^16.4.0",
    "express": "4.16.3",
    "express-request-id": "^1.4.1",
    "helmet": "^3.15.1",
    "jsonwebtoken": "8.2.1",
    "morgan": "^1.9.1",
    "multer": "^1.3.1",
    "orm": "^5.0.4",
    "package.json": "^2.0.1",
    "pg": "^7.4.1",
    "react-s3-uploader": "^4.8.0",
    "socket.io": "2.0.4",
    "socketio-jwt": "4.5.0",
    "standard": "11.0.1",
    "swagger-express-mw": "0.7.0",
    "winston": "2.4.0"
  },
  "directories": {
    "lib": "lib"
  },
  "devDependencies": {},
  "keywords": []
}

我尝试了很多方法,比如切换 Node 版本、删除模块然后重新安装等等,但我无法解决这个问题。

我正在使用这些版本: npm 6.11.3 node 8.11.1 并且我正在使用 GitBash(我尝试了 Powershell 但没有改变)

(我尝试了每个版本的 Node (>=8.11.1),每次错误都是一样的)

ls -a (at ~/Desktop/Stage/whasq-api-master/.local)
.env  start.js
//start.js content

require('dotenv').load({path: process.env.PWD + '/.local/.env'})
require('../')

//.env content

RDUK_CONFIG_PATH=config
RDUK_CONFIG_PREFIX=app
RDUK_CONFIG_EXT=.yaml
APP_PORT=6500
APP_SECRET=xxx
SF_SECRET=(hidden)
SF_CERTIFICATE=sf_certificate/public.pem
AMQP_ADDRESS=amqp://cawdev:cawdev@192.168.1.87:5672
LOGGLY_TOKEN=xxx
LOGGLY_SUBDOMAIN=xxx
LOGGLY_LOGIN=jessie
LOGGLY_PASSWORD=(hidden)
ES_ADDRESS=http://cawtest.net:9200/
DB_PROTOCOL=postgresql
DB_HOST=localhost
DB_PORT=5433
DB_NAME=mydb
DB_USER=esteban
DB_PASS=(hidden)
AWS_ACCESS_KEY_ID=(hidden)
AWS_SECRET_ACCESS_KEY=(hidden)
AWS_REGION=eu-west-3
AWS_BUCKET=(hidden)

我还尝试将我的存储库移至 C:/以避免我的用户名 ($AAU000-TFETR2QTBK6P) 出现潜在问题,因为我认为该名称可能会被误认为是环境变量。

最佳答案

问题出在Windows解释npm库的方式上,建议您切换到Linux或Mac环境。

关于node.js - Node 找不到模块 ~/package.json (已关闭),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58024446/

相关文章:

node.js - 将redis.get分组2ms,然后通过mget执行

javascript - 跨 Node.js 模块共享下划线 mixins

windows - 在 Windows : Entrypoint script "no such file or directory" 上构建 Docker 镜像

Angular cli 不使用全局 npm 安装

node.js - 由于 SELF_SIGNED_CERT_IN_CHAIN,Expo 无法更新 npm 包

node.js - 如何使用 Nodejs API 在 DigitalOcean Bucket 中创建文件夹?

javascript - 将数组与 Javascript 中的字符串匹配(NodeJS + EJS)

node.js - 在node.js上做一些认证后如何避免请求流数据丢失?

c++ - Windows SDK 参数注释

windows - SMTP VRFY 扫描器的用途是什么?