Ошибка: файл локальной рабочей области ('angular.json') не найден.

У меня есть travis-ci интегрированный с моей учетной записью GitHub (https://github.com/pradeep0601/Angular5-Router-App).

Когда я обновил версию @angular/cli cli с 1.7.4 до 6.0.0-rc.3, сборка начала давать сбой с ошибкой:

Local workspace file ('angular.json') could not be found.
Error: Local workspace file ('angular.json') could not be found.
    at WorkspaceLoader._getProjectWorkspaceFilePath (/home/travis/build/pradeep0601/Angular5-Router-App/node_modules/@angular/cli/models/workspace-loader.js:37:19)
    at WorkspaceLoader.loadWorkspace (/home/travis/build/pradeep0601/Angular5-Router-App/node_modules/@angular/cli/models/workspace-loader.js:24:21)
    at TestCommand._loadWorkspaceAndArchitect (/home/travis/build/pradeep0601/Angular5-Router-App/node_modules/@angular/cli/models/architect-command.js:177:32)
    at TestCommand.<anonymous> (/home/travis/build/pradeep0601/Angular5-Router-App/node_modules/@angular/cli/models/architect-command.js:45:25)
    at Generator.next (<anonymous>)
    at /home/travis/build/pradeep0601/Angular5-Router-App/node_modules/@angular/cli/models/architect-command.js:7:71
    at new Promise (<anonymous>)
    at __awaiter (/home/travis/build/pradeep0601/Angular5-Router-App/node_modules/@angular/cli/models/architect-command.js:3:12)
    at TestCommand.initialize (/home/travis/build/pradeep0601/Angular5-Router-App/node_modules/@angular/cli/models/architect-command.js:44:16)
    at /home/travis/build/pradeep0601/Angular5-Router-App/node_modules/@angular/cli/models/command-runner.js:100:23

Фрагмент package.json для лучшего понимания рабочей среды:

    "@angular/cli": "6.0.0-rc.3",
    "@angular/compiler-cli": "^5.2.0",
    "@angular/language-service": "^5.2.0",
    "@types/jasmine": "~2.8.3",
    "@types/jasminewd2": "~2.0.2",

Ответы

Ответ 1

У меня просто была такая же проблема.

Это связано с выпуском v6.0.0-rc.2, https://github.com/angular/angular-cli/releases:

Новый формат конфигурации. Новый файл можно найти по адресу angular.json (но также может быть принят файл .angular.json). Запуск ng update для проекта CLI 1.7 переместит вас в новую конфигурацию.

Мне нужно было выполнить:

ng update @angular/cli --migrate-only --from=1.7.4

Это удалило .angular-cli.json и создало angular.json.

Если это приводит к тому, что ваш проект использует 1.7.4, установите v6 локально:

npm install --save-dev @angular/[email protected]

И попробуйте еще раз обновить ваш проект:

ng update @angular/cli --migrate-only --from=1.7.4

Ответ 2

Я получаю те же сообщения об ошибках. С моей стороны это была глупая ошибка, я не запускал ng serve в каталоге, где находится мой Angular проект. Убедитесь, что вы находитесь в правильном каталоге (каталоге проекта) перед запуском этой команды.

Ответ 3

В последней версии, без --migrate-only я обновил --migrate-only.

Я сделал нг обновление

Формат конфигурации Angular CLI был изменен, и ваша существующая конфигурация может быть автоматически обновлена с помощью следующей команды:

ng update @angular/cli
            Updating karma configuration
            Updating configuration
            Removing old config file (.angular-cli.json)
            Writing config file (angular.json)
            Some configuration options have been changed, please make sure to update any npm scripts which you may have modified.
DELETE .angular-cli.json
CREATE angular.json (3684 bytes)
UPDATE karma.conf.js (1040 bytes)
UPDATE src/tsconfig.spec.json (322 bytes)
UPDATE package.json (1340 bytes)
UPDATE tslint.json (3140 bytes)

Ответ 4

Удалите старую версию Angular cli и установите Angular CLI global:

Обновите глобальный пакет Angular cli до следующей версии, "@angular/compiler-cli": "^ 6.0.0"

npm uninstall -g @angular/cli
npm cache verify
npm install -g @angular/[email protected]

Создайте новый проект и приложение по умолчанию, выполнив следующую команду:

ng new my-project
cd my-project
ng serve

Ответ 5

Ну, я столкнулся с той же проблемой, как только я обновил свою angular cli версию.

Ранее я использовал 1.7.4 и только сейчас обновил его до angular cli 6.0.8.

Чтобы обновить Angular Cli global-

npm uninstall -g angular-cli
npm cache clean 
npm install -g @angular/[email protected]

Чтобы обновить Angular Cli dev-

npm uninstall --save-dev angular-cli
npm install --save-dev @angular/[email protected]
npm install

Чтобы исправить проблемы аудита после установки npm: -

npm audit fix

Чтобы исправить проблему, связанную с "angular.json": -

ng update @angular/cli --migrate-only --from=1.7.4

Надеюсь, это поможет вам :)

Ответ 6

Если вы не знаете версию, текущий проект выполнен, вы можете опустить --from и набрать --migrate-only

ng update @angular/cli - только для миграции

Ответ 7

Попробуйте использовать следующую команду:

ng update @angular/cli --migrate-only --from=1.7.4

Это будет выполнять ниже

  • Обновление конфигурации кармы

  • Обновление конфигурации

  • Удаление старого файла конфигурации (.angular-cli.json)

  • Написание конфигурационного файла (angular.json)

Пожалуйста, обратите внимание, что приведенная выше команда должна быть запущена в папке, где у вас есть файл. angular-cli.json и тогда он будет заменен angular.json.

Ответ 8

Если все виды обновления коммандос не будет делать это. Попробуйте удалить package-lock.json. А затем запустите npm install. Сделал трюк для меня после прохождения тонны обновления коммандос.

Ответ 9

Меня устраивает:

Удалить папку node_modules

Запустите команду: npm install

(Если это не работает в первый раз, повторите это 2 или 3 раза, это забавно, но это работает для меня.)

Ответ 10

Проверьте структуру папок, в которой вы выполняете команду, вы должны выполнить команду 'ng serve', где в структуре должен быть файл angular.json.

Файл angular.json будет сгенерирован по умолчанию при запуске команды

npm install -g '@angular/cli' ng новое имя_проекта, затем cd project_folder, затем запустить ng serve. это сработало для меня

Ответ 11

Просто запустите ng update @angular/cli в своей консоли. Вы можете найти некоторые уязвимости после выполнения команды (если используете npm), но затем просто запустите npm audit fix в консоли, чтобы исправить их. Эта команда просканирует проект на наличие уязвимостей и исправит проблемы совместимости, установив обновления для этих зависимостей. Если вы не хотите, чтобы авто немедленно исправить эти уязвимости, вы можете выполнить Пробный: запустив npm audit fix --dry-run -json в консоли. Это даст вам представление о том, что будет делать npm audit fix команды npm audit fix, в форме json в консоли.

Ответ 12

У меня была такая же проблема, и то, что я сделал, работает для меня:

  1. Внутри файла package.json обновите версию Angular CLI до нужной мне версии:

    "devDependencies": { ...
      "@angular/cli": "^6.0.8",
      ...
    }
    
  2. Удалите папку node_modules, чтобы очистить проект перед обновлением зависимостей:

    npm install
    
    ng update @angular/cli
    
  3. Попробуйте снова построить мой проект (последняя и удачная попытка)

    ng build --prod
    

Ответ 13

Для меня то, что работало было создание нового проекта Угловое и просто скопировал файл angular.json в проекте, который имел проблемы из - за того, что файл angular.json отсутствует.

Ответ 14

Я также столкнулся с той же проблемой, и я только что выполнил команду ниже.

ng update @angular/cli - только для миграции --from = 1.6.4

Он просто удаляет angular-cli.json и создает angular.json. Вы можете найти это в журналах.

Как только вы начнете казнь. Вы сможете увидеть журналы ниже в своем терминале.

        Updating karma configuration
        Updating configuration
        Removing old config file (.angular-cli.json)
        Writing config file (angular.json)
        Some configuration options have been changed, please make sure to update any                                     
        npm scripts which you may have modified.
        DELETE .angular-cli.json
        CREATE angular.json (3599 bytes)
        UPDATE karma.conf.js (962 bytes)
        UPDATE src/tsconfig.spec.json (324 bytes)
        UPDATE package.json (1405 bytes)
        UPDATE tsconfig.json (407 bytes)
        UPDATE tslint.json (3026 bytes)

Ответ 15

Воспользуйтесь этой ссылкой для перехода с Angular 5.2 на 6. https://update.angular.io/

Обновление до версии 8.9 работало для меня. enter image description here

Ответ 16

Для меня проблема заключалась в том, что у меня есть папка углового проекта внутри папки проекта rails, и я выполнил все команды углового обновления в родительской папке rails, а не в реальной угловой папке.

Ответ 17

У меня было это сообщение об ошибке внутри контейнера докера. Я решил это добавив:

WORKDIR /usr/src

в Dockerfile.

Ответ 18

Для меня проблема была в том, что глобальная версия @angular/cli и @angular/compiler-cli были разными. Посмотрите на package.json.

...
"@angular/cli": "6.0.0-rc.3",
"@angular/compiler-cli": "^5.2.0",
...

И если они не совпадают, обновите или понизьте один из них.

Ответ 19

У меня была такая же проблема, и я обнаружил, что в моем проекте нет package.json (а только package-lock.json). После, я

  1. восстановил package.json из системы контроля версий
  2. удалили глобальную и локальную версии angular-cli (как сказано в инструкции)
  3. следовал стандартной процедуре обновления

..и все работало нормально. Потребовалось время, чтобы понять это, но это сделало это для меня.

Ответ 20

~/Desktop $ ng serve

Локальный файл рабочей области ('angular.json') не найден.

Ошибка: локальный файл рабочей области ('angular.json') не найден.

at WorkspaceLoader._getProjectWorkspaceFilePath (/usr/lib/node_modules/@angular/cli/models/workspace-loader.js:37:19)
at WorkspaceLoader.loadWorkspace (/usr/lib/node_modules/@angular/cli/models/workspace-loader.js:24:21)
at ServeCommand._loadWorkspaceAndArchitect (/usr/lib/node_modules/@angular/cli/models/architect-command.js:180:32)
at ServeCommand.<anonymous> (/usr/lib/node_modules/@angular/cli/models/architect-command.js:47:25)
at Generator.next (<anonymous>)
at /usr/lib/node_modules/@angular/cli/models/architect-command.js:7:71
at new Promise (<anonymous>)
at __awaiter (/usr/lib/node_modules/@angular/cli/models/architect-command.js:3:12)
at ServeCommand.initialize (/usr/lib/node_modules/@angular/cli/models/architect-command.js:46:16)
at Object.<anonymous> (/usr/lib/node_modules/@angular/cli/models/command-runner.js:87:23)

Это потому, что я не выбрал каталог проекта Angular.

Это должно быть как:

~/Рабочий стол /angularproject $ ng serve

Ответ 21

Я пытался настроить приложение Ionic 4 для работы в качестве pwa. Когда я запускаю команду:

ng add @angular/pwa

... получил сообщение об ошибке. После некоторых попыток и ошибок я обнаружил, что когда мой проект был создан, команда запуска была неправильной. Я использовал версию Ionic 3:

ionic start myApp tabs --type=ionic-angular

И правильно это:

ionic start myApp tabs --type=angular

без типа ionic-. Это решило ошибку.

Ответ 22

Просто проверьте ваш каталог, вы должны запустить "ng serve" в том же каталоге, где вы создали проект.

Итак, сначала войдите в каталог вашего проекта.