6

angular构建库项目时出现以下错误。

Building Angular Package
Building entry point '@abc/lib'
Compiling TypeScript sources through ngc
Bundling to FESM2015

BUILD ERROR
Could not resolve entry (C:\Dev\abc\build\dist-npm\esm2015\abc-lib.js)
Error: Could not resolve entry (C:\Dev\abc\build\dist-npm\esm2015\abc-lib.js)
    at error (C:\Dev\abc\node_modules\rollup\dist\rollup.js:3460:30)
    at C:\Dev\AppBuilder\node_modules\rollup\dist\rollup.js:21474:17

Could not resolve entry (C:\Dev\abc\build\dist-npm\esm2015\abc-lib.js)
Error: Could not resolve entry (C:\Dev\abc\build\dist-npm\esm2015\abc-lib.js)
    at error (C:\Dev\abc\node_modules\rollup\dist\rollup.js:3460:30)
    at C:\Dev\AppBuilder\node_modules\rollup\dist\rollup.js:21474:17

module当我在public_api.ts文件中添加新内容时,我只会收到此错误

export * from './lib/designer.service';
export * from './lib/designer.component';
export * from './lib/designer.module';
export * from './lib/core/app-core.module'; // new module

我正在使用以下命令来构建模块

ng构建库

知道为什么我会收到此错误吗?

4

2 回答 2

24

我面临着同样的问题。我的错误是:

在我在图书馆的一项服务中,我使用了环境变量并像这样导入它:

import { environment } from 'src/environments/environment';

因此,在构建时,它无法获取相对路径并显示错误。我删除了它,它工作正常。

请确保在您的库模块中,您没有引用任何与主要项目相关的项目或没有导入任何相对路径

于 2019-03-07T09:05:22.327 回答
2

我的组件库项目遇到了同样的问题。通过从 dist 文件夹中引用 A 库,我将库 A 用于库 B。问题是因为通过路径引用库 A。

我通过使用 npm install A@0.0.1 将库 A 正确安装到 B 中解决了这个问题。

这解决了我的问题。

于 2019-11-15T10:01:00.117 回答