Schematic input does not validate against the Schema: {"name":"testng7"} on Angular 7

Viewed 21743

I updated the Angular CLI to the latest @angular/cli@7.0.2 on a Mac OS. When issuing the command ng new testng7, I get this error:

Schematic input does not validate against the Schema: {"name":"testng7"}
Errors:
  Data path "" should have required property 'version'.

And nothing is created. Any clues how to fix?

8 Answers

This error is possible of avoiding naming standards

Project name can not have underscore '_'. It can have dashes '-', small and capital letters and digits.

Valid Project Names

myProject //camel casing style or JavaScript style

MyProject //normal style

MyProject1 //letters and numbers mixed style

My-Project1 //letters, numbers and dash mixed style

Invalid Project Names

MyProject-1 //dash can not be between letter and digit

My_Project //underscore is restricted

I added this flag to make it work --client-project

ng add @nguniversal/express-engine --client-project=launcher

First, to upgrade, I did this:

npm i -g @angular/cli
npm i @angular/cli

to install globally and locally. Running an npm audit fix revealed there is a problem with a missing package.json in the npm logs - missing from my root directory! So I created one with the following command in my home directory:

npm init --yes

for a default one. Now issuing an ng new projName works.

I was having the same problem

Schematic input does not validate against the Schema: {"name":"DemoProj"}

Errors:

Data path "" should have required property 'version'.

do the following steps to resolve this issue

1) uninstall -g angular-cli

2) npm uninstall --save-dev angular-cli

3) npm install -g @angular/cli@latest

4) npm install --save-dev @angular/cli@latest

5) npm install -g

6) ng new YourProjectName

i hope it will work

Try the

ng new projectName

cmd in powershell with admin rights. I did it once and after that it works in normal cmd promt too.

Try

ng new testng7 --version=7.0.2

It Will Work!!!

none of the solutions helped me or does not deal with the root cause. I found this in my angular.json

  "schematics": {
"@schematics/angular:component": {
  "styleext": "scss"
 }
}

Also my IDE was showing styletext property was not allowed. So I changed the above to this and it works.

    "@schematics/angular:component": {
      "skipTests": true
    }
  }

Sometimes can be caused by wrong 'global' version of ng.

Try

npx ng generate component MyComponent

That will use 'local' ng installed into node_modules of project

Related