MODULE_NOT_FOUND Nestjs 和 Swagger
MODULE_NOT_FOUND Nestjs and Swagger
我正在尝试将 Swagger 添加到我的 Nestjs 应用程序中。当我试图编译它时抛出模块未找到错误。
我使用 Nestjs 文档中的相同代码。
这是我的 main.ts:
async function bootstrap() {
const app = await NestFactory.create(AppModule);
const config = new DocumentBuilder()
.setTitle('Cats example')
.setDescription('The cats API description')
.setVersion('1.0')
.addTag('cats')
.build();
const document = SwaggerModule.createDocument(app, config);
SwaggerModule.setup('api', app, document);
await app.listen(3000);
}
bootstrap();
这是错误:
internal/modules/cjs/loader.js:883
throw err;
^
Error: Cannot find module '@nestjs/core/router/route-path-factory'
Require stack:
- D:\BK\solidity\MVPApp\blockchain\back-end-student-wallet-v2\node_modules\@nestjs\swagger\dist\swagger-explorer.js
- D:\BK\solidity\MVPApp\blockchain\back-end-student-wallet-v2\node_modules\@nestjs\swagger\dist\swagger-scanner.js
- D:\BK\solidity\MVPApp\blockchain\back-end-student-wallet-v2\node_modules\@nestjs\swagger\dist\swagger-module.js
- D:\BK\solidity\MVPApp\blockchain\back-end-student-wallet-v2\node_modules\@nestjs\swagger\dist\index.js
- D:\BK\solidity\MVPApp\blockchain\back-end-student-wallet-v2\node_modules\@nestjs\swagger\index.js
- D:\BK\solidity\MVPApp\blockchain\back-end-student-wallet-v2\dist\main.js
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:880:15)
at Function.Module._load (internal/modules/cjs/loader.js:725:27)
我正在使用 Node 14.15.1,@nestjs/swagger 5.0.0,swagger-ui-express: 4.1.6
更新最新版本的@nestjs/platform-express、@nestjs/common、@nestjs/core (8.0.0) 解决了我的问题。好像 nestjs/cli 使用了以前版本的 nestjs
Swagger v5 与 Nest v8 兼容(@nestjs/core@^8.0.0、@nestjs/common@^8.0.0 等)
Swagger v4 与 Nest v7 兼容
我正在尝试将 Swagger 添加到我的 Nestjs 应用程序中。当我试图编译它时抛出模块未找到错误。 我使用 Nestjs 文档中的相同代码。 这是我的 main.ts:
async function bootstrap() {
const app = await NestFactory.create(AppModule);
const config = new DocumentBuilder()
.setTitle('Cats example')
.setDescription('The cats API description')
.setVersion('1.0')
.addTag('cats')
.build();
const document = SwaggerModule.createDocument(app, config);
SwaggerModule.setup('api', app, document);
await app.listen(3000);
}
bootstrap();
这是错误:
internal/modules/cjs/loader.js:883
throw err;
^
Error: Cannot find module '@nestjs/core/router/route-path-factory'
Require stack:
- D:\BK\solidity\MVPApp\blockchain\back-end-student-wallet-v2\node_modules\@nestjs\swagger\dist\swagger-explorer.js
- D:\BK\solidity\MVPApp\blockchain\back-end-student-wallet-v2\node_modules\@nestjs\swagger\dist\swagger-scanner.js
- D:\BK\solidity\MVPApp\blockchain\back-end-student-wallet-v2\node_modules\@nestjs\swagger\dist\swagger-module.js
- D:\BK\solidity\MVPApp\blockchain\back-end-student-wallet-v2\node_modules\@nestjs\swagger\dist\index.js
- D:\BK\solidity\MVPApp\blockchain\back-end-student-wallet-v2\node_modules\@nestjs\swagger\index.js
- D:\BK\solidity\MVPApp\blockchain\back-end-student-wallet-v2\dist\main.js
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:880:15)
at Function.Module._load (internal/modules/cjs/loader.js:725:27)
我正在使用 Node 14.15.1,@nestjs/swagger 5.0.0,swagger-ui-express: 4.1.6
更新最新版本的@nestjs/platform-express、@nestjs/common、@nestjs/core (8.0.0) 解决了我的问题。好像 nestjs/cli 使用了以前版本的 nestjs
Swagger v5 与 Nest v8 兼容(@nestjs/core@^8.0.0、@nestjs/common@^8.0.0 等) Swagger v4 与 Nest v7 兼容