こんな感じのディレクトリがある
├── api
│ ├── ...
│ ├── nest-cli.json
│ └── db
│ ├── entities
│ └── ...
└── batch
├── ...
├── nest-cli.json
└── src
└── ...
何をしたいか
batch/src
以下で、 api/db/entities
内にあるエンティティ使いたい
cd batch
nest start
すると
Error: Cannot find module '../batch/dist/main'
となって動かない
これを解決したい
何をすればいいか
dist配下にどちらかの形でmain.js出力されるようにすればいい
dist/main.js
dist/src/main.js
何をしたか
batch/nest-cli.json
を書き換えた
batch/nest-cli.json
{
"collection": "@nestjs/schematics",
"sourceRoot": "src",
"root": "src",
"compilerOptions": {
"webpack": true,
"deleteOutDir": true
}
}
どうなるか
dist/src/main.js
と出力されるようになる
※ "root": "src"
を削除してbuildすると dist/main.js
と出力される
感想
ディレクトリ構成から見直すべきかもしれないが、依存関係をいい感じにコネてとりあえず動かしたい時に使おうと思った