При связывании с ошибкой UMD не удалось разрешить my-service из dist \ fesm5 \ my-api-name.js

С этих выходных генерация клиентского кода для машинописного текста angular 8.2.7 из файла спецификации swagger open-api 3 перестала работать:

------------------------------------------------------------------------------
Building entry point '@my-company/my-api'
------------------------------------------------------------------------------
Compiling TypeScript sources through ngc
Bundling to FESM2015
WARNING: 'HttpResponse', 'HttpEvent' and 'HttpParameterCodec' are imported from external module '@angular/common/http' but never used
Bundling to FESM5
WARNING: 'HttpResponse', 'HttpEvent' and 'HttpParameterCodec' are imported from external module '@angular/common/http' but never used
Bundling to UMD
ERROR: Could not resolve './my.service' from dist\fesm5\my-generated-api-name.js

Я попытался вернуться к предыдущей версии "@ openapitools / openapi-generator-cli": "0.0.19-4.1.2" на версию "0.0.19-4.1.1"

Я также попробовал фиктивный тестовый файл спецификации open-api 3 по адресу https://petstore.swagger.io/ и у меня такая же ошибка

Журнал отладки ничего не говорит, я невежественный

Вот команда npm, которую я запускаю:

"generate-front": "openapi-generator generate -i http://localhost:22953/swagger/v1/swagger.json -g typescript-angular -o ./code-front -c options-front.json"

Вот файл опций:

{
    "npmName": "@my-company/my-api",
    "npmVersion": "0.18.0",
    "ngVersion": "8.2.7",
    "serviceSuffix": "Repository",
    "modelSuffix": "Model"
}

Он должен строиться без ошибок


person Pierre-Alexandre    schedule 28.10.2019    source источник


Ответы (1)


Проблема заключалась в ng-packagr, он установил последнюю версию, у которой есть критические изменения

"ng-packagr": "^5.4.0"

Снял шапку и все прошло нормально:

"ng-packagr": "5.4.0"

Вуаля!

------------------------------------------------------------------------------
Building entry point '@my-company/my-api'
------------------------------------------------------------------------------
Compiling TypeScript sources through ngc
Bundling to FESM2015
Bundling to FESM5
Bundling to UMD
Minifying UMD bundle
Copying declaration files
Writing package metadata
Removing scripts section in package.json as it's considered a potential security vulnerability.
Built @my-company/my-api

------------------------------------------------------------------------------
Built Angular Package!
 - from: D:\my-dev-repo\openapi-codegen\code-front
 - to:   D:\my-dev-repo\openapi-codegen\code-front\dist
------------------------------------------------------------------------------
person Pierre-Alexandre    schedule 28.10.2019
comment
Виновник вашей личной культуры: github.com/ng-packagr/ng-packagr / issues / 1431 - person Pierre-Alexandre; 29.10.2019