Я использую dotenv v8.2.0 в своем проекте NestJS, и он всегда работал в моей производственной среде. Я клонировал проект на свой новый компьютер, создал файл .env с правильными переменными в корневой папке, но файл .env теперь не встраивается в папку dist.
Файл .env:
databaseHost=database-di...
databasePassword=a3^U...
Настройка моего файла main.ts (только соответствующие части):
import { config } from 'dotenv';
import * as path from 'path';`
const ENV_FILE = path.join(__dirname, '..', '.env');
config({ path: ENV_FILE });
Когда я регистрирую функцию конфигурации dotenv, я получаю следующее:
{
error: Error: ENOENT: no such file or directory, open 'C:\Users\Jasper\***\dist\.env'
at Object.openSync (fs.js:461:3)
at Object.readFileSync (fs.js:364:35)
at Object.config (C:\Users\Jasper\***\node_modules\dotenv\lib\main.js:96:29)
at Object.<anonymous> (C:\Users\Jasper\***\dist\src\main.js:21:22)
at Module._compile (internal/modules/cjs/loader.js:1176:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1196:10)
at Module.load (internal/modules/cjs/loader.js:1040:32)
at Function.Module._load (internal/modules/cjs/loader.js:929:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12)
at internal/main/run_main_module.js:17:47 {
errno: -4058,
syscall: 'open',
code: 'ENOENT',
path: 'C:\\Users\\Jasper\\***\\dist\\.env'
}
Когда я смотрю на папку dist, файл .env действительно не переносится, хотя раньше он работал всегда. Регистрация переменных в папке .env возвращает undefined
.
Кто-нибудь знает, что я делаю не так?