使用yo hyperledger-composer:angular生成的Angular应用ng serve报重复标识符Asset错误
解决Hyperledger Composer Angular脚手架的Duplicate Identifier错误
我之前折腾Hyperledger Composer Angular应用的时候也碰到过一模一样的问题,给你几个亲测有效的解决思路:
1. 直接修复重复定义的文件
报错已经明确指向了/Users/swaroop/angular-app/src/app/test.ts,打开这个文件:
- 检查里面是否有两次
export class Asset的定义,删掉其中重复的那一段 - 或者看看是不是重复导入了同名的
Asset(比如从两个不同的路径导入了相同名称的模块),清理掉多余的导入语句
2. 重新生成应用并修复依赖
有时候是脚手架生成工具的小bug导致代码重复,你可以试试:
- 先删掉旧的应用目录:
rm -rf angular-app - 重新执行生成命令:
yo hyperledger-composer:angular - 进入新生成的目录后,先执行
npm install --force(强制安装依赖,避免版本冲突引发的隐性问题) - 最后启动服务:
ng serve
3. 检查TypeScript配置
如果上面的方法都没用,打开项目根目录的tsconfig.json:
- 查看
include或者files字段,确认有没有重复包含某个定义了Asset的文件,导致编译时重复识别 - 也可以尝试把
strict模式暂时设为false,看看是不是严格类型检查放大了问题(修复后再改回true即可)
内容的提问来源于stack exchange,提问作者Sai Swaroop Reddy
相关产品推荐
相关产品推荐

