bower install nic nie robi, nawet nie rzuca błędu

15

Jestem na Ubuntu 14.04. Zrobiłem sudo apt-get install npm. Potem zrobiłem npm install -g bower, co się udało.

Z which npm, rozumiem /usr/bin/npm/.
Z which bower, rozumiem /usr/local/bin/bower.

Sklonowałem repozytorium github, które miało bower.json. Staram się robić bower installw katalogu głównym, ale nic się nie dzieje. W tym momencie nic nie echa, nic nie instaluje. Po prostu nie robi ... nic. Próbowałem bower --helpi nic nie wychodzi.

Próbowałem sudo apt-get updatei to npmjest aktualne. Nodejsteż istnieje. Ilekroć robię coś z npm, po prostu nic nie robi.

EDYCJA: kiedy to zrobię npm --global ls, altana jest wymieniona w katalogach

W czym może być problem i jak go naprawić?

krukowaty
źródło
Jaka jest zawartość bower.jsonpliku? Czy możesz podać link do repozytorium?
Lucio

Odpowiedzi:

14

Miałem ten sam problem. Wydaje się, że jest to spowodowane niepoprawnym pakietem węzłów.

Usunięcie pakietu węzła i zainstalowanie starszego pakietu zamiast tego działało dla mnie:

apt-get remove node
apt-get autoremove
apt-get install nodejs-legacy
Sivaraj D.
źródło
to zadziałało. Zbudowałem nodejs ze źródła, żeby to działało
corvid
18

Ta praca dla mnie:

bower install --force

gdzie --forcezainstalować siłą

winorośl
źródło
1
Cóż, to załatwiło sprawę, ale zastanawiam się, dlaczego musiałem to wymusić. Dziękuję Ci.
Luis Milanese
Uratowałeś mi życie ...
Jean-Luc Barat
4

Sprawdziłeś which npmi which bower, ale nie sprawdziłeś which node. W Ubuntu nodepakiet nie jest powiązany z NodeJS. Pakiet NodeJS jest instalowany jako nodejs, co spowoduje uszkodzenie wszystkich skryptów zależnych od node. Jest to podobne do innego pytania, w którym globalna instalacja jshint nie działała .

Zakładając, że masz nodejszainstalowany, możesz utworzyć dowiązanie symboliczne, które nodewskazuje na nodejs:

sudo ln -s /usr/bin/nodejs /usr/bin/node

Jeśli to nie zadziała lub jeśli wolisz nie używać wersji NodeJS w oficjalnych repozytoriach, możesz zainstalować Node z PPA (który da ci oba polecenia nodei nodejspolecenia) lub użyć NVM (co jest moją osobistą preferencją, ponieważ pozwala to uniknąć konieczności sudoinstalowania modułów npm).

Michael Martin-Smucker
źródło
Oprócz tworzenia dowiązania symbolicznego muszę również usunąć pakiet węzłów. Jak wspomniano w drugiej odpowiedzi, pakiet węzłów maskuje faktyczny pakiet nodejs. Więc nawet jeśli po utworzeniu dowiązania symbolicznego dla nodejs, nodepolecenie faktycznie odnosi się do jakiegoś programu Amateur Packet Radio Node, a nie do rzeczywistych nodejów, których pragniemy.
Lokesh Rajwani,
3

W systemie Ubuntu 14.04 rozwiązałem go za pomocą:

sudo apt-get remove npm
sudo apt-get remove node
sudo apt-get autoremove
sudo apt-get update
sudo apt-get install nodejs
sudo ln -s /usr/bin/nodejs /usr/bin/node
Kenneth Jiang
źródło
0

Dla każdego, kto ma ten problem, ale wszystkie inne poprawki nie działają. Przekonałem się, że wpisałem niewłaściwe polecenie, pomyślałem, że potrzebuje polecenia nodejs przed poleceniem:

nodejs bower install

Ale altana wykonuje się bezpośrednio z terminala

bower install

Głupie wiem!

Matthew Dolman
źródło
0

Ubuntu 16.04 i nowsze

W Ubuntu 16.04 i nowszych menedżer pakietów Bower można szybko i łatwo zainstalować z aplikacji Ubuntu Software. Otwórz oprogramowanie Ubuntu, wyszukaj „altana” i kliknij przycisk Instaluj , aby ją zainstalować. We wszystkich obecnie obsługiwanych wersjach Ubuntu otwórz terminal i wpisz:

sudo snap install bower --classic  

wprowadź opis zdjęcia tutaj

Pakiet przystawki altany zostanie zaktualizowany automatycznie, gdy aktualizacje będą dostępne.

Karel
źródło