Angular-cli: ng <command> --help does not work

Created on 20 Nov 2019  路  6Comments  路  Source: angular/angular-cli

馃悶 bug report

Affected Package

The issue is caused by package @angular/cli

Is this a regression?

not sure.

Description

Angular cli commands seems to be working, but the --help flag does not work in them in angular 8. It is suggested in the documentation in multiple places that it should.

馃敩 Minimal Reproduction

(npm uninstall -g @angular/cli)
npm install -g @angular/cli@latest
ng generate --help

馃敟 Exception or Error

forest@forest:~$ ng generate --help

An unhandled exception occurred: Unable to locate a workspace file for workspace path.
See "/tmp/ng-s4wanw/angular-errors.log" for further details.

forest@forest:~$ cat /tmp/ng-MYDOue/angular-errors.log

[error] Error: Unable to locate a workspace file for workspace path.
    at Object.readWorkspace (/home/forest/.nvm/versions/node/v12.3.1/lib/node_modules/@angular/cli/node_modules/@angular-devkit/core/src/workspace/core.js:74:19)
    at async GenerateCommand._loadWorkspace (/home/forest/.nvm/versions/node/v12.3.1/lib/node_modules/@angular/cli/models/schematic-command.js:442:35)
    at async GenerateCommand.initialize (/home/forest/.nvm/versions/node/v12.3.1/lib/node_modules/@angular/cli/models/schematic-command.js:40:9)
    at async GenerateCommand.initialize (/home/forest/.nvm/versions/node/v12.3.1/lib/node_modules/@angular/cli/commands/generate-impl.js:12:9)
    at async GenerateCommand.validateAndRun (/home/forest/.nvm/versions/node/v12.3.1/lib/node_modules/@angular/cli/models/command.js:124:9)
    at async Object.runCommand (/home/forest/.nvm/versions/node/v12.3.1/lib/node_modules/@angular/cli/models/command-runner.js:186:24)
    at async default_1 (/home/forest/.nvm/versions/node/v12.3.1/lib/node_modules/@angular/cli/lib/cli/index.js:54:31)forest@forest:~$ ^C

馃實 Your Environment

Angular Version:


Angular CLI: 8.3.19
Node: 12.3.1
OS: linux x64
Angular: 
... 

Package                      Version
------------------------------------------------------
@angular-devkit/architect    0.803.19
@angular-devkit/core         8.3.19
@angular-devkit/schematics   8.3.19
@schematics/angular          8.3.19
@schematics/update           0.803.19
rxjs                         6.4.0

Anything else relevant?
-

angulacli low broken triage #1 bufix

Most helpful comment

Are you trying to run this from inside a Angular project? Or globally , to use ng generate --help you need to be inside an Angular workspace. Let me know if that works, we can update the docs if needed.

All 6 comments

Are you trying to run this from inside a Angular project? Or globally , to use ng generate --help you need to be inside an Angular workspace. Let me know if that works, we can update the docs if needed.

Yep, that was the problem. Outside of an angular project, ng new --help works, ng generate --help does not. Inside they both works.

Although this might be a source of misunderstanding. Using the --help flag produces a different error than using the command itself:
forest@forest:~/projects$ ng generate
The generate command requires to be run in an Angular project, but a project definition could not be found.
forest@forest:~/projects$ ng generate --help
An unhandled exception occurred: Unable to locate a workspace file for workspace path. See "/tmp/ng-QM4fsM/angular-errors.log" for further details.

Best solution could be updating the error message a bit maybe. Thank you for the help!

That's a good suggestion @alan-agius4 what's your thought on this?

We should fix this 馃槉

Please try to update the docs also because it can create a problem for person like me who is new in angular. Thanks. cli#basic-workflow

Oh I believe it is really confused people who just new to angular cli and might be a kinda blocker for some, so this ng command --help should just work

Here is the list of commands that does not work outside the angular project https://github.com/angular/angular-cli/issues/19057:

ng build --help
ng serve --help
ng test --help
ng e2e --help
ng generate --help
ng add --help
ng lint --help
ng xi18n --help
ng run --help
Was this page helpful?
0 / 5 - 0 ratings