2015-04-08 14 views
5

Theo this post máy phát sẽ có thể chạy tập lệnh postinstall trong các phiên bản 1.3.1 trở lên. Tôi đang sử dụng bower 1.3.12.Bowerrc bài cài đặt móc không hoạt động

Dưới đây là tập tin bowerrc tôi:

{ 
    "scripts": { 
     "postinstall": "./node_modules/grunt-cli/bin/grunt" 
    } 
} 

Tuy nhiên, khi tôi cài đặt gói sử dụng Chòi chơi, móc không được thực thi. Tôi đang làm gì sai?

+0

Bower của sử dụng [ 'scripts' móc] (https://github.com/bower/bower/blob/master/HOOKS.md) là có nghĩa là cho dự án phụ thuộc vào các thành phần, không phụ thuộc vào các thành phần. "* Các móc này không có ý định cung cấp bước xây dựng sau khi cài đặt cho các tác giả thành phần. *" Bạn nên xuất bản phiên bản thành phần đã bị làm phiền của bạn. –

+0

Không phải là một ý tưởng tồi để thực hiện các tệp được xây dựng? Tôi không muốn gây ô nhiễm repo của tôi với một tập tin được rút gọn ngẫu nhiên khi src đã có. (Nó có vẻ ngớ ngẩn với tôi rằng các tác giả bower gỡ bỏ móc cài đặt sau khi npm có chúng). – dopatraman

+0

Có thể không phải lúc nào cũng lý tưởng, nhưng chắc chắn là một khả năng. Mặc dù, họ có lẽ nên được tổ chức để họ không có vẻ ngẫu nhiên. Bootstrap, ví dụ, hiện giữ một thư mục ['/ dist'] (https://github.com/twbs/bootstrap/tree/v3.3.4/dist). Và, liên quan đến NPM, nó cho phép điều này được giải quyết bằng tập lệnh ['prepublish'] (https://docs.npmjs.com/misc/scripts) và một đăng ký tự lưu trữ các tệp đã xuất bản, vì vậy bạn có thể xuất bản các tệp được xây dựng mà không cần phải giữ chúng trong repo của bạn. –

Trả lời

2

Tôi có cùng vấn đề với bạn. Tôi đã được giải quyết bằng cách thêm một biến cwd- .bowerrc file:

{ 
    "cwd": "./", 
    "scripts": { 
     "postinstall": "grunt wiredep" 
    } 
} 
0

Lý do đơn giản là vì bạn không có bất kỳ gói trong bower.json của bạn hoặc tất cả các gói đã được cài đặt.

hãy có một cái nhìn tại vấn đề của tôi được báo cáo trong github: https://github.com/bower/bower/issues/2302

Các vấn đề liên quan