You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

从TSLint迁移至ESLint:执行convert-tslint-to-eslint命令后报错

解决Angular项目TSLint转ESLint时"Cannot find angular.json"的问题及版本疑问

我来帮你一步步排查和解决这个问题:

先解决"Cannot find angular.json"的直接报错

  • 确认当前工作目录正确:这个转换命令必须在你的Angular项目根目录下执行,也就是存放angular.json文件的那个文件夹。先打开终端运行ls(Mac/Linux)或dir(Windows),看看当前目录里有没有这个文件。如果没有,先通过cd命令切换到正确的项目根目录再重试。
  • 检查项目是否为标准Angular CLI结构:如果你的项目是Angular 6之前创建的,那它用的配置文件是.angular-cli.json而不是angular.json。这种老版本项目直接用@angular-eslint/schematics会不兼容,得先把项目迁移到Angular CLI的现代结构(也就是生成angular.json),或者先升级Angular版本。

关于是否需要升级到Angular 13的疑问

TSLint已经被官方废弃,而@angular-eslint/schematics是Angular官方推荐的ESLint替代方案,它的版本和Angular版本强绑定:

  • Angular 12及以上版本才原生支持ESLint,并且使用angular.json作为项目配置文件。如果你的项目是Angular 11或更低版本,不仅可能出现找不到angular.json的问题,还会有大量兼容性冲突。
  • 建议先运行ng version查看你的Angular版本:
    • 如果是Angular 10或更早,建议先逐步升级到Angular 12或13(不建议跨大版本直接升级,比如从Angular 9跳到13,容易出问题),可以用Angular CLI的升级命令:ng update @angular/cli @angular/core,每次升级一个大版本,逐步完成。
    • 如果已经是Angular 12+,那确保安装的@angular-eslint/schematics版本和你的Angular版本一致,比如Angular 12对应@angular-eslint/schematics@12,安装时可以指定版本:npm install @angular-eslint/schematics@12 --save-dev。

额外排查点

如果以上步骤都做了还是报错,可以试试:

  • 检查angular.json是否被误改名或删除,要是不小心删了,可以通过ng init(在项目根目录)重新生成一个基础配置文件,再手动恢复项目的特定配置。
  • 确认终端有足够的权限访问angular.json,比如某些系统下需要用管理员权限运行终端。

内容的提问来源于stack exchange,提问作者Rômulo Sorato

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.01 01:42:35