Je ne peux pas sembler localiser où l'erreur provient de l'application compilée avec Found 0 errors. Watching for file changes.
J'ai vu une résolution similaire sur Stackoverflow, mais aucun ne semble aborder la question
Voici la trace de la pile
internal/modules/cjs/loader.js:797
throw err;
^
Error: Cannot find module './app.controller'
Require stack:
- C:\Users\Dell\Documents\DokunFiles\Nestjs\app\api\dist\src\app.module.js
- C:\Users\Dell\Documents\DokunFiles\Nestjs\app\api\dist\src\main.js
Avec l'Appmodule ci-dessous, le contrôleur d'applications est correctement importé dans le module d'applications.
app.module.ts
import { Module } from '@nestjs/common';
import { MongooseModule } from '@nestjs/mongoose';
import { AppController } from './app.controller';
import { AppService } from './app.service';
import { UserModule } from './user/user.module';
@Module({
imports: [MongooseModule.forRoot(process.env.MONGO_URI,
{
useNewUrlParser: true,
useUnifiedTopology: true
})
, UserModule,
],
controllers: [AppController],
providers: [AppService],
})
export class AppModule { }
app.controller.ts
import { Controller, Get } from '@nestjs/common';
import { AppService } from './app.service';
@Controller()
export class AppController {
constructor(private readonly appService: AppService) {}
@Get()
getHello(): string {
return this.appService.getHello();
}
}
Courir:
npm run prebuild
ou
rimraf dist
ou
rm -rf dist/
Et essayez à nouveau.
J'ai eu le même problème:
stanislas@yeji > nest start api -> master ! ? RC=130
internal/modules/cjs/loader.js:983
throw err;
^
Error: Cannot find module './app.controller'
Require stack:
- /Users/stanislas/git/soundbase/api/dist/src/app.module.js
- /Users/stanislas/git/soundbase/api/dist/src/main.js
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:980:15)
at Function.Module._load (internal/modules/cjs/loader.js:862:27)
at Module.require (internal/modules/cjs/loader.js:1042:19)
at require (internal/modules/cjs/helpers.js:77:18)
at Object.<anonymous> (/Users/stanislas/git/soundbase/api/dist/src/app.module.js:13:26)
at Module._compile (internal/modules/cjs/loader.js:1156:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1176:10)
at Module.load (internal/modules/cjs/loader.js:1000:32)
at Function.Module._load (internal/modules/cjs/loader.js:899:14)
at Module.require (internal/modules/cjs/loader.js:1042:19) {
code: 'MODULE_NOT_FOUND',
requireStack: [
'/Users/stanislas/git/soundbase/api/dist/src/app.module.js',
'/Users/stanislas/git/soundbase/api/dist/src/main.js'
]
}
Et remarqué que le contrôleur n'était effectivement pas compilé:
stanislas@yeji > ll dist/src/ api -> master ! ?
total 48
-rw-r--r-- 1 stanislas staff 138B Apr 19 17:45 app.module.d.ts
-rw-r--r-- 1 stanislas staff 2.1K Apr 19 17:45 app.module.js
-rw-r--r-- 1 stanislas staff 753B Apr 19 17:45 app.module.js.map
-rw-r--r-- 1 stanislas staff 11B Apr 19 17:45 main.d.ts
-rw-r--r-- 1 stanislas staff 340B Apr 19 17:45 main.js
-rw-r--r-- 1 stanislas staff 290B Apr 19 17:45 main.js.map
drwxr-xr-x 5 stanislas staff 160B Apr 19 17:52 migration
Mais j'ai remarqué qu'il a fonctionné comme prod
:
stanislas@yeji > npm run build && npm run start:prod api -> master ! ? RC=1
> [email protected] prebuild /Users/stanislas/git/soundbase/api
> rimraf dist
> [email protected] build /Users/stanislas/git/soundbase/api
> nest build
> [email protected] start:prod /Users/stanislas/git/soundbase/api
> node dist/main
[Nest] 95175 - 04/19/2020, 6:40:45 PM [NestFactory] Starting Nest application...
[Nest] 95175 - 04/19/2020, 6:40:45 PM [InstanceLoader] PassportModule dependencies initialized +34ms
[Nest] 95175 - 04/19/2020, 6:40:45 PM [InstanceLoader] TypeOrmModule dependencies initialized +0ms
[Nest] 95175 - 04/19/2020, 6:40:45 PM [InstanceLoader] JwtModule dependencies initialized +1ms
[Nest] 95175 - 04/19/2020, 6:40:45 PM [InstanceLoader] AuthModule dependencies initialized +0ms
[Nest] 95175 - 04/19/2020, 6:40:45 PM [InstanceLoader] AppModule dependencies initialized +1ms
[Nest] 95175 - 04/19/2020, 6:40:45 PM [InstanceLoader] TypeOrmCoreModule dependencies initialized +56ms
[Nest] 95175 - 04/19/2020, 6:40:45 PM [InstanceLoader] TypeOrmModule dependencies initialized +1ms
[Nest] 95175 - 04/19/2020, 6:40:45 PM [InstanceLoader] UsersModule dependencies initialized +0ms
[Nest] 95175 - 04/19/2020, 6:40:45 PM [RoutesResolver] AppController {}: +3ms
[Nest] 95175 - 04/19/2020, 6:40:45 PM [RouterExplorer] Mapped {/auth/login, POST} route +3ms
[Nest] 95175 - 04/19/2020, 6:40:45 PM [RouterExplorer] Mapped {/profile, GET} route +0ms
[Nest] 95175 - 04/19/2020, 6:40:45 PM [RoutesResolver] UserController {/users}: +0ms
[Nest] 95175 - 04/19/2020, 6:40:45 PM [RouterExplorer] Mapped {/users, POST} route +1ms
[Nest] 95175 - 04/19/2020, 6:40:45 PM [RouterExplorer] Mapped {/users, GET} route +0ms
[Nest] 95175 - 04/19/2020, 6:40:45 PM [RouterExplorer] Mapped {/users/:id, GET} route +1ms
[Nest] 95175 - 04/19/2020, 6:40:45 PM [RouterExplorer] Mapped {/users/:id, PUT} route +0ms
[Nest] 95175 - 04/19/2020, 6:40:45 PM [RouterExplorer] Mapped {/users/:id, DELETE} route +0ms
[Nest] 95175 - 04/19/2020, 6:40:45 PM [NestApplication] Nest application successfully started +2ms
Et puis il a commencé automatiquement à travailler à nouveau:
stanislas@yeji > npm start api -> master ! ? RC=130
> [email protected] start /Users/stanislas/git/soundbase/api
> nest start
[Nest] 95255 - 04/19/2020, 6:41:00 PM [NestFactory] Starting Nest application...
[Nest] 95255 - 04/19/2020, 6:41:00 PM [InstanceLoader] PassportModule dependencies initialized +35ms
[Nest] 95255 - 04/19/2020, 6:41:00 PM [InstanceLoader] TypeOrmModule dependencies initialized +0ms
[Nest] 95255 - 04/19/2020, 6:41:00 PM [InstanceLoader] JwtModule dependencies initialized +0ms
[Nest] 95255 - 04/19/2020, 6:41:00 PM [InstanceLoader] AuthModule dependencies initialized +1ms
[Nest] 95255 - 04/19/2020, 6:41:00 PM [InstanceLoader] AppModule dependencies initialized +0ms
[Nest] 95255 - 04/19/2020, 6:41:01 PM [InstanceLoader] TypeOrmCoreModule dependencies initialized +56ms
[Nest] 95255 - 04/19/2020, 6:41:01 PM [InstanceLoader] TypeOrmModule dependencies initialized +0ms
[Nest] 95255 - 04/19/2020, 6:41:01 PM [InstanceLoader] UsersModule dependencies initialized +1ms
[Nest] 95255 - 04/19/2020, 6:41:01 PM [RoutesResolver] AppController {}: +3ms
[Nest] 95255 - 04/19/2020, 6:41:01 PM [RouterExplorer] Mapped {/auth/login, POST} route +2ms
[Nest] 95255 - 04/19/2020, 6:41:01 PM [RouterExplorer] Mapped {/profile, GET} route +1ms
[Nest] 95255 - 04/19/2020, 6:41:01 PM [RoutesResolver] UserController {/users}: +0ms
[Nest] 95255 - 04/19/2020, 6:41:01 PM [RouterExplorer] Mapped {/users, POST} route +1ms
[Nest] 95255 - 04/19/2020, 6:41:01 PM [RouterExplorer] Mapped {/users, GET} route +0ms
[Nest] 95255 - 04/19/2020, 6:41:01 PM [RouterExplorer] Mapped {/users/:id, GET} route +0ms
[Nest] 95255 - 04/19/2020, 6:41:01 PM [RouterExplorer] Mapped {/users/:id, PUT} route +1ms
[Nest] 95255 - 04/19/2020, 6:41:01 PM [RouterExplorer] Mapped {/users/:id, DELETE} route +0ms
[Nest] 95255 - 04/19/2020, 6:41:01 PM [NestApplication] Nest application successfully started +2ms
Puisque j'ai déjà essayé nest build && node dist/main.js
Auparavant, je suis à peu près sûr npm run prebuild
alias rimraf dist
(qui juste rm -rf dist/
) a fait l'affaire. Depuis que le problème était dans le dossier dist
, cela semble assez logique pour moi. Je ne sais pas quel était le problème exact.
Chercher "incremental": true
dans ton tsconfig.json
déposer. Le vrai fait des mises à jour incrémentielles. La définir sur False, espérons-je, vous évitera de ne pas nettoyer dist
à chaque fois