Lỗi: Không thể tìm thấy tệp không gian làm việc cục bộ ('angular.json')


189

Tôi đã travis-citích hợp với tài khoản GitHub của mình ( https://github.com/pradeep0601/Angular5-Router-App ).

Khi tôi cập nhật @angular/cliphiên bản từ 1.7.4 lên 6.0.0-rc.3, bản dựng bắt đầu bị lỗi:

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

đoạn mã gói.json để hiểu rõ hơn về môi trường chạy:

    "@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",

Tôi đã đối mặt với cùng một vấn đề, và thật ngớ ngẩn, điều này xảy ra khi sử dụng thiết bị đầu cuối từ mã studio trực quan và hoạt động khi chuyển sang cli mặc định của windows!
Gilles Kagarama

Câu trả lời:


319

tôi chỉ có cùng một vấn đề.

Nó liên quan đến việc phát hành v6.0.0-rc.2, https://github.com/angular/angular-cli/release :

Định dạng cấu hình mới. Có thể tìm thấy tệp mới tại angular.json (nhưng .angular.json cũng được chấp nhận). Chạy cập nhật trên dự án CLI 1.7 sẽ đưa bạn đến cấu hình mới.

Tôi cần phải thực thi:

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

Điều này loại bỏ .angular-cli.jsonvà tạo ra angular.json.

Nếu điều này dẫn đến dự án của bạn bằng 1.7.4, hãy cài đặt v6 cục bộ:

npm install --save-dev @angular/cli@v6.0.0-rc.4

Và thử một lần nữa để cập nhật dự án của bạn với:

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

4
chạy ng update @angular/cli --migrate-only --from=1.7.4kết quả trong lỗi : Collection "@schematics/angular/migrations/migration-collection.json" cannot be resolved.. Bất kỳ cách nào để khắc phục nó?
ĐI VEGAN

1
Tôi cũng đang nhận được 'Tùy chọn không xác định:' --extractCss'`
Mohammed Barakat

8
Hãy chắc chắn rằng các phiên bản npm và nodejs của bạn được cập nhật hoặc bạn có thể sẽ gặp thất bại. ng update @angular/clilà tất cả những gì cần thiết
rtaft

1
@ user1932595 Tôi đã phải nâng cấp @schematics/angularlên phiên bản mới nhất để vượt qua lỗi đó.
tạm biệt

2
Một ghi chú ngắn ở trên. Việc loại bỏ .angula-cli.json đã không xảy ra với tôi cho đến lần chạy thứ hai của lệnh cập nhật ng.
Aggie Jon của 87

78

Tôi đã nhận được thông báo lỗi tương tự. Đó là một sai lầm ngớ ngẩn của tôi, tôi đã không chạy ng servetrong thư mục nơi dự án Angular của tôi. Hãy chắc chắn rằng bạn đang ở đúng thư mục (thư mục dự án) trước khi chạy lệnh này.


3
oh thật điên rồ :)) cảm ơn vì đã lưu rất nhiều sự cố phức tạp cho tôi! đôi khi các giải pháp thực sự đơn giản
msanjay

đã làm điều tương tự sai lầm
Faizan Mubasher

Tôi đã làm điều tương tự. Bạn tạo một thư mục để phục vụ dự án của bạn và nó tạo một thư mục khác bên trong thư mục đó (tự tát mình)
Jonathan

tức là ng ứng dụng mới của tôi, cd my-app (tôi đã thấy nhận xét này sớm hơn nhưng cho rằng nó có nghĩa là cấp cao nhất)
tony

đã làm sai lầm tương tự bạn đã cứu ngày của tôi, Cảm ơn
Ahmed ElShemy

36

Với phiên bản gần đây, không có --migrate-onlytôi cập nhật repo.

Tôi đã cập nhật

Định dạng cấu hình Angular CLI đã được thay đổi và cấu hình hiện tại của bạn có thể được cập nhật tự động bằng cách chạy lệnh sau:

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)

Tôi nhận đượcIncompatible peer dependencies found. See above.
Simon Baars

Một lỗi không mong muốn đã xảy ra; gói @ angular / flex-layout không có phiên bản null.
Ca ngợi thần linh

20

Chà, tôi đã đối mặt với vấn đề tương tự ngay khi tôi cập nhật angular cliphiên bản của mình .

Trước đây tôi đã sử dụng 1.7.4 và bây giờ tôi đã nâng cấp nó lên angular cli 6.0.8.

Để cập nhật Angular Cli toàn cầu:

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

Để cập nhật Angular Cli dev:

npm uninstall --save-dev angular-cli
npm install --save-dev @angular/cli@latest
npm install

Để khắc phục sự cố kiểm toán sau khi cài đặt npm:

npm audit fix

Để khắc phục sự cố liên quan đến "angular.json":

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

17

Gỡ cài đặt phiên bản cũ của Angular cli và cài đặt Angular CLI toàn cầu:

Cập nhật gói toàn cầu Angular cli lên phiên bản tiếp theo, "@ angular / Trình biên dịch-cli": "^ 6.0.0"

npm uninstall -g @angular/cli
npm cache verify
npm install -g @angular/cli@next

Tạo một dự án mới và ứng dụng mặc định bằng cách chạy lệnh sau:

ng new my-project
cd my-project
ng serve

7
không sử dụng cli @ next, sử dụng cli @ mới nhất hoặc bạn sẽ nhận được các phiên bản beta.
Chuyển

9

Hãy thử sử dụng lệnh dưới đây:

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

Nó sẽ thực hiện dưới đây

  • Cập nhật cấu hình nghiệp chướng

  • Đang cập nhật cấu hình

  • Xóa tệp cấu hình cũ (.angular-cli.json)

  • Viết tập tin cấu hình (angular.json)

Xin lưu ý rằng lệnh trên nên được chạy trong thư mục nơi bạn có tệp. angular-cli.jsonvà nó sẽ được sau đó thay thế bằng angular.json.


Tôi đã chạy lệnh nhiều lần và tệp angular.json không bao giờ xuất hiện. Tuy nhiên, nếu tôi xóa tệp angular-cli.json, hãy chạy lệnh, tệp angular-cli.json sẽ được thêm lại. tôi đang thiếu gì ở đây
jgritten

8

Nếu bạn không biết phiên bản, dự án hiện tại đã được thực hiện, bạn có thể bỏ qua --fromlệnh và gõ--migrate-only

ng cập nhật @ angular / cli - chỉ di chuyển


7

Nếu tất cả các loại cập nhật của Commando sẽ không làm điều đó. Hãy thử xóa gói-lock.json . Và sau đó chạy cài đặt npm . Đã lừa tôi sau khi trải qua hàng tấn chỉ huy cập nhật.


Bất kỳ lý do nào để không sử dụng cách tiếp cận này làm mặc định (bỏ thư mục node_modules và gói-lock.json) và chỉ chạy cài đặt npm?
Wallace Howery

4

Nó hoạt động với tôi:

Xóa thư mục node_modules

Chạy lệnh: npm install

(Nếu nó không hoạt động lần đầu tiên, hãy lặp lại 2 hoặc 3 lần này, thật buồn cười nhưng nó hiệu quả với tôi.)


4
Tại sao lặp lại quá trình này có hiệu lực khác với lần đầu tiên?
Sledge

3

Kiểm tra cấu trúc thư mục của bạn nơi bạn đang thực thi lệnh, bạn nên chạy lệnh 'ng phục vụ' nơi cần có tệp angular.json trong cấu trúc.

Tệp angular.json sẽ được tạo theo mặc định khi chúng tôi chạy lệnh

npm install -g '@ angular / cli' ng new Project_name rồi cd project_folder sau đó, chạy ng phục vụ. nó làm việc cho tôi


3

Chỉ cần chạy ng update @angular/cli trong giao diện điều khiển của bạn. Bạn có thể tìm thấy một số lỗ hổng sau khi chạy lệnh (nếu sử dụng npm), nhưng sau đó chỉ cần chạynpm audit fix trong bảng điều khiển để sửa chúng. Lệnh này sẽ quét dự án xem có lỗ hổng nào không và nó cũng sẽ khắc phục các sự cố tương thích bằng cách cài đặt các bản cập nhật cho các phụ thuộc này. Nếu bạn không muốn tự động sửa các lỗ hổng này ngay lập tức, bạn có thể thực hiện Chạy khô: bằng cách chạy npm audit fix --dry-run -json trong bảng điều khiển. Điều này sẽ cho bạn một ý tưởng về những gì lệnh npm audit fixsẽ làm, dưới dạng json trong giao diện điều khiển.


3

Tôi đã có cùng một vấn đề, và những gì tôi đã làm điều đó cho tôi là:

  1. Bên trong tệp pack.json, cập nhật phiên bản Angular CLI lên phiên bản mong muốn của tôi:

    "devDependencies": { ...
      "@angular/cli": "^6.0.8",
      ...
    }
    
  2. Xóa node_modulesthư mục, để làm sạch dự án trước khi cập nhật các phụ thuộc với:

    npm install
    
    ng update @angular/cli
    
  3. Cố gắng xây dựng lại dự án của tôi (lần thử cuối cùng và thành công)

    ng build --prod
    

2

Đối với tôi, những gì đã làm việc là tạo ra một dự án Angular mới và chỉ sao chép tệp angular.json trong dự án có vấn đề do thực tế là tệp angular.json thiếu .


1

Đối với tôi, vấn đề là do phiên bản toàn cầu @ angular / cli@ angular / Trình biên dịch-cli là khác nhau. Nhìn vào pack.json .

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

Và nếu chúng không khớp, hãy cập nhật hoặc hạ cấp một trong số chúng.


1

Tôi cũng phải đối mặt với vấn đề tương tự và tôi chỉ thực hiện dưới lệnh.

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

Nó chỉ đơn giản là xóa angular-cli.jsonvà tạo angular.json. Bạn có thể tìm thấy điều này trong nhật ký.

Một khi bạn bắt đầu thực hiện. Bạn sẽ có thể thấy các bản ghi dưới đây trong thiết bị đầu cuối của bạn.

        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)


0

Đối với tôi, vấn đề là tôi có một thư mục dự án góc trong thư mục dự án rails và tôi đã chạy tất cả các lệnh cập nhật góc trong thư mục cha rails chứ không phải thư mục góc thực tế.


0

Tôi đã có thông báo lỗi này trong một container docker. Tôi đã giải quyết nó thêm:

WORKDIR /usr/src

đến Dockerfile.


0

Tôi đã có cùng một vấn đề và thấy rằng không có gói.json trong dự án của tôi (mà chỉ có gói-lock.json). sau đó tôi

  1. đã khôi phục gói.json từ kiểm soát nguồn
  2. gỡ cài đặt các phiên bản angular-cli toàn cầu và cục bộ (như hướng dẫn nói)
  3. làm theo quy trình nâng cấp tiêu chuẩn

.. và tất cả đều hoạt động tốt. Mất một lúc để tìm ra nó, nhưng điều đó đã làm cho tôi.


0
~/Desktop $ ng serve

Không thể tìm thấy tệp không gian làm việc cục bộ ('angular.json').

Lỗi: Không thể tìm thấy tệp không gian làm việc cục bộ ('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)

Điều này là do tôi không chọn thư mục dự án Angular.

Nó sẽ giống như:

~ / Máy tính để bàn / angularproject $ ng phục vụ


0

Tôi đã cố gắng thiết lập ứng dụng Ionic 4 của mình để chạy như một pwa. Khi tôi chạy lệnh:

ng add @angular/pwa

... nhận được thông báo lỗi. Sau một số lần thử và lỗi, tôi phát hiện ra rằng khi dự án của tôi được tạo, lệnh start đã sai. Tôi đã sử dụng phiên bản Ionic 3:

ionic start myApp tabs --type=ionic-angular

Và đúng là:

ionic start myApp tabs --type=angular

không có loại 'ion-'. Điều này đã giải quyết lỗi.


0

Chỉ cần kiểm tra thư mục của bạn, bạn phải chạy "ng phục vụ" trên cùng thư mục mà bạn đã tạo dự án.

Vì vậy, đầu tiên nhập vào thư mục dự án của bạn.


0

Đối với những người chỉ đơn giản là nhân bản một dự án và cố gắng chạy nó, bạn cần chạy npm installtrước. Tôi hoàn toàn quên chạy cái này và chỉ đơn giản là chạy ng servetrước khi cài đặt các mô-đun nút.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.