Ошибка углового интерфейса командной строки: требуется выполнить команду serve в угловом проекте, но не удалось найти определение проекта

159

При запуске команд терминала ng serverили ng serve --live-reload=trueя получаю эту проблему:

Команда serve должна выполняться в проекте Angular, но определение проекта не найдено.

Гурприт Сингх
источник
11
Проверьте, есть ли у вас папка node_modules в папке проекта, если не выполняете установку npm
KEMBL
У меня уже есть папка node_modules.
Гурприт Сингх
Я наткнулся на этот вопрос, когда у меня появилось то же сообщение об ошибке при попытке запустить «ng build». Для меня ответом было запустить «npm run build»
cfranklin
Я был в корневом каталоге, и получаю эту ошибку: D. После того, как ng new projectя забыл войти в каталог проекта.
Давут Гюрбюз

Ответы:

229

Я также получил эту проблему и решил, запустив команду ниже.

ng update @angular/cli --migrate-only --from=<WhateverVersionYouAreCurrentlyOn>

например

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

получить ссылку отсюда https://github.com/angular/angular-cli/issues/12215#issuecomment-433593036

Лаквиндер Сингх
источник
30
Это происходит потому, что новый angular-cli использует angular.json вместо .angular-cli.json в качестве файла проекта, и ваш ответ позаботится об этом преобразовании
кодовое имя Jack
7
Примечание. --from=1.7.4Представляет версию, из которой выполняется миграция, поэтому ее 1.7.4следует заменить на угловую версию, которую вы ранее использовали (например 5.2.10, 6.0.0и т. Д.).
CJN
4
ng update @ angular / cli << это сработало для меня с существующим проектом от 6 до 7
Abdullah Adeeb
2
Я был на 1.2.4 и получил следующую ошибку: The specified command update is invalid. For available options, see ``ng help``.я решил ее, обновив angular-cli до 1.7.4 и затем следуя этому ответу.
ILikeFood
1
Спасибо. Работая на меня, когда я повысил угловой с 4.4.7 до 7
Pullat Junaid
71

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

Me1o
источник
для доступа используйте корневую папку , pm> dir pm> cd clientappто если у вас есть ошибка использование сообщения следующий pm>ng config -g cli.warnings.versionMismatch false
Hosam hemaily
44

если вы скачали проект, делайте в проекте

установка npm

Muraletharan
источник
моя проблема была частными пакетами npm, которые не были установлены
Дэвид
Та же проблема, с которой я столкнулся при тестировании проектов для углового урока
mahlatse
19

Наконец, команда ниже исправила проблему для меня!

ng update --all --force
Шахзин шейх
источник
Я пытался ng update @angular/cliне сработало, но ng update --all --forceсработало, как ожидалось, какая разница?
k11k2
15

Ошибка Angular Cli: требуется выполнить команду serve в проекте Angular, но определение проекта не найдено

Проблема отсутствовала файлы angular.json.

    ng update --all --force

Проверено в Angular 7+

afeef
источник
5

Это происходило в моем существующем проекте, когда я пытался обновиться до последней версии nodeи npmпакетов:

  1. Удалить глобальный: npm uninstall -g angular-cli
  2. Сброс кеша: npm cache cleanили npm cache verify(для npm version> 5)
  3. Установите последнюю версию: npm install -g @angular/cli@latest
amrendra
источник
4

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

Следуйте инструкциям по миграции .

Lasitha
источник
4

Это было глупо для меня, но нужно оставить комментарий, может быть, я спасу кого-то еще от хлопот. Такое же сообщение появляется, если вы работаете в многозадачном режиме и у вас есть несколько проектов, поэтому некоторые проекты вложены в папку проекта, как, например, projectFolder/subProject/projectOneя projectFolder/subProjectпытался выполнить команду ng serve.

Убедитесь, что вы находитесь в правильной папке, потому что такая же ошибка произойдет, если вы находитесь в неправильной папке, а conf и build отсутствуют!

StefaDesign
источник
3

В консоли диспетчера пакетов выполните команду

PM> cd NameofApp 

тогда вы можете попробовать запустить команду там. Например,

PM > ng generate component Home
Зубейд Хендрикс
источник
3

Это происходит, когда вы пытаетесь запустить команду Angular «ng s» или «ng serve» в другой папке, а не в корневой папке приложения Angular.

Также обновите Angular с помощью следующей команды:

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

Это разберется.

OmkieIT Solutions
источник
3

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

Я выбираю @Tinu решение это работа

Шаг 1) Установка npm -g @ angular / cli

Шаг 2) Новый проект my-angular

Шаг 3) cd my-angular-project

Шаг 4) ng serve --open

только что сделал резервную копию нашего текущего исходного кода и вернул его в новый угловой проект, который будет создан.

ed91
источник
2

В моем случае я забыл изменить свой каталог, поэтому сразу после запуска команды:

нг новый AngularProject

выполнить другую команду:

cd AngularProject

и ng serveработал на меня.

Усман Халид
источник
2

У меня была такая же проблема с Angular7, потому что нам нужно перейти в корневую папку, прежде чем запускать ваше приложение. Перейдите в корневую папку вашего приложения и выполните команду. Это прекрасно работает для меня.

Чамиля Маддумаж
источник
2

Я столкнулся с той же проблемой, но решил ее, выполнив следующие шаги кода.

Step 1) npm install -g @angular/cli
Step 2) ng new my-angular-project
Step 3) cd my-angular-project
Step 4) ng serve --open
Тину Матхай
источник
Почему мы должны создать новый проект? Я хочу, чтобы это было сделано для существующего
Dadhich Sourav
зачем создавать новый проект? Если у кого-то есть проблемы в существующем проекте
Lint
2

Эта ошибка возникает, когда проект, который вы запускаете, не является угловым проектом. Хотя вы скачали угловой проект, но не установили все зависимости, поэтому команда ng serve недоступна для вас.

Просто перейдите к пути, где хранится проект, и используйте команду

npm install

(Примечание - Node.js должен быть установлен в вашей системе, и если вы используете Angular 2 или выше, angular cli также должен быть установлен в вашей системе перед выполнением этой команды. Чтобы проверить, установлен ли node.js в вашей системе 1) Откройте cmd (любой путь - как узел должен быть глобально установлен в вашей системе) 2) использовать команду

node -v
npm -v

чтобы получить версию узла и npm)

Еще одна важная вещь: угловая версия cli не будет иметь значения, если версия, установленная в вашей системе, выше, чем версия, требуемая проектом. Это выдаст предупреждение, но вы можете проигнорировать предупреждение.

Уткарш Джоши
источник
2

Эта ошибка может возникать, когда мы находимся в неправильном каталоге. Поэтому используйте команду cd для изменения вашего каталога. Из приведенного выше комментария не очень очевидно, какая конкретная команда выдает эту ошибку, поэтому этот ответ основан на предположении, что вы запускаете ng serve вне корневой папки / папки фактического проекта. Вот почему это дает ошибку, потому что команды cli требуют файлы conf & build для запуска сборки cli.

These should be the steps:
npm install -g @angular/cli  //corrected from 'angular-cli'
ng new projectname
cd projectname
ng serve
open http://localhost:4200
Сачитра Дилшан
источник
2

Перейдите в папку приложения и снова запустите команду generate:

введите описание изображения здесь

живи любя
источник
1

Я столкнулся с той же ошибкой. Причина в том, что новое обновление angular cli делает angular-cli.json избыточным, и вместо него оно заменяется angular.json. Моя предыдущая версия Angular Cli - 1.7.4, поэтому, чтобы внести изменения, я выполнил следующую команду, она сделает преобразование для вас:

ng update @angular/cli --migrate-only --from=1.7.4
Винаяк Савале
источник
Неизвестная опция: '--target' npm ERR! код ELIFECYCLE
Sohail
1

Я столкнулся с той же проблемой, когда,

Я создал новый угловой проект, используя старую версию angular-cli (1.4.7). Затем я обновил angular-cli, используя следующие команды ( НЕ ДЕЛАЙТЕ НИЖЕ, ЧТОБЫ ОБНОВИТЬ CLI )

  • npm uninstall -g @angular/cli
  • npm cache clean --force
  • npm install -g @angular/cli@latest

Теперь, когда я пытался ng serve, я получал такую ​​же ошибку, как ты

Angular Cli Error: The serve command requires to be run in an Angular project, but a project definition could not be found

СЛЕДУЕТ ОБНОВЛЯТЬ CLI

ng update @angular/cli --migrate-only --from=1.4.7
дешевое вино
источник
1

Как сказал Усман, у меня было много проблем в первый раз, я следовал учебному пособию. Я не установил свой каталог в каталог проекта, поэтому получил эту ошибку.

Я решил проблему

  1. Установка правильного корневого каталога, где был мой проект cd myproject
  2. Скомпилируйте приложение - ng serve

Вот и все.

Максвелл Фанди
источник
1

Перепробовал все вышеперечисленное Но для меня это было решено

npm start

viveksuggu
источник
это должно быть в разделе комментариев
Pardeep
@Pardeep Я перепробовал все вышеприведенные ответы, но npm start сработал. так что это будет полезно для другого разработчика. если он сделан в качестве привлекательного ответа, а не в комментариях
viveksuggu
1

Я использую ionciv1, в файле ionic.config.jsonудалить ключ углового типа, и он работал правильно

пример:

  {
  "name": "nombre",
  "integrations": {
    "cordova": {}
  },
  "type": "angular", // delete
  "gulpStartupTasks": [
    "sass",
    "templatecache",
    "ng_annotate",
    "useref",
    "watch"
  ],
  "watchPatterns": [
    "www/**/*",
    "!www/lib/**/*"
  ],
  "browsers": [
    {
      "platform": "android",
      "browser": "crosswalk",
      "version": "12.41.296.5"
    }
  ],
  "id": "0.1"
}

решена

     {
      "name": "nombre",
      "integrations": {
        "cordova": {}
      },
      "gulpStartupTasks": [
        "sass",
        "templatecache",
        "ng_annotate",
        "useref",
        "watch"
      ],
      "watchPatterns": [
        "www/**/*",
        "!www/lib/**/*"
      ],
      "browsers": [
        {
          "platform": "android",
          "browser": "crosswalk",
          "version": "12.41.296.5"
        }
      ],
      "id": "0.1"
    }
Йохан Стивен Эрнандес Осорио
источник
1

Эту ошибку обычно можно проследить до обновления нашей глобальной или локальной среды выполнения CLI. Чтобы проверить, является ли это проблемой, нам нужно просмотреть package.jsonфайл. Там мы должны искать зависимость @ angular / cli . Это должно указывать версию CLI, которая использовалась для создания нашего проекта. Давайте запомним это значение, так как нам нужно использовать его для переноса нашего проекта позже.

Теперь мы должны сравнить с текущим временем выполнения CLI, введя следующую команду в окне терминала.

ng v

выход нг в

Если вы получили ошибку An unhandled exception occurred: ENOENT: no such file or directory, scandir '~/your-app/node_modules', то вы забыли запуститьnpm install

Консоль должна отображать текущую версию CLI. Если версии отличаются , нам нужно перенести проект на новую версию CLI, выполнив команду ниже. Обратите внимание, что для параметра from version следует установить значение, найденное для параметра @ angular / cli .

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

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

Мы должны быть в состоянии ввести следующую команду, и проект должен загружаться нормально.

ng server

Благодаря озкары

Нормандский эданс
источник
1

Убедитесь, что вы создали угловое приложение, используя команду ниже, а затем запустите ng serve в созданной папке Project.

ng new Project_Name
AdroitSJ
источник
0

Также убедитесь, что если вы запускаете ng serve, сначала остановите его ...

dirtyw0lf
источник
0

Решаемые. Я получил ту же проблему на Ubuntu 18.04.01 LTS . Никакие выше параметры не работали, так как я использовал NVM (Node Version manager.). Решение
перед созданием проекта , используйте команду
nvm use 10
(моя версия узла была 10.15.0, поэтому я использовал «nvm use 10»).
Она покажет вам вывод:
Теперь с использованием узла v10.15.0 (npm v6.4.1)
версии будут различаться для разных систем. затем создайте новый проект.

Правин Похаркар
источник
0

Вы можете обновить angular с помощью команды 'ng update --all'. Это займет время, но убедитесь, что все ваши компоненты обновлены.

Дипак Самантарай
источник
0

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

Я получил ту же ошибку, так как я пытался ng serveкомандовать за пределами моего проекта

Пример :: допустим, у вас есть проект с именем "Ecommerce", перейдите в папку и попробуйте команду ng serve открыть терминал cd Ecommerce ng serve

Срикант Авадханула
источник
0

Это исправило мою проблему:

ng generate component nameComponent --module app.module
PoussinDev
источник
0

Это происходит потому, что мы нажимаем на команду ng serve по какому-то другому пути. Эту проблему можно решить, нажав команду ng serve или npm start по пути, в котором находится наш проект (продолжайте путь до папки, содержащей src, node_modules и т. Д.)

F: \ project \ AngularDemo \ AngularDemoapp> ng serve

Радха Басида
источник