Bower Install non fa nulla, nemmeno genera un errore


15

Sono su Ubuntu 14.04. L'ho fatto sudo apt-get install npm. Poi l'ho fatto npm install -g bower, che ha avuto successo.

Con which npm, capisco /usr/bin/npm/.
Con which bower, capisco /usr/local/bin/bower.

Ho clonato un repository github che aveva un bower.json. Provo a fare bower installnella radice ma non succede nulla. Come in, non riecheggia nulla, non installa nulla. Semplicemente ... niente. Ho provato bower --helpe non viene fuori nulla.

Ho provato sudo apt-get updatee dice che npmè aggiornato. Nodejsesiste anche. Ogni volta che faccio qualcosa con npm, semplicemente non fa nulla.

EDIT: quando lo faccio npm --global ls, il pergolato è elencato nelle directory

Quale potrebbe essere il problema qui e come posso risolverlo?


Qual è il contenuto del bower.jsonfile? Potresti fornire il link al repository?
Lucio,

Risposte:


14

Ho avuto lo stesso problema. Sembra essere causato da un pacchetto nodo errato.

Rimuovere il pacchetto del nodo e installare il pacchetto legacy invece ha funzionato per me:

apt-get remove node
apt-get autoremove
apt-get install nodejs-legacy

questo ha funzionato. Ho creato nodejs dal sorgente per farlo funzionare
corvid

18

Questo lavoro per me:

bower install --force

dove --forceinstallare con forza


1
Bene, ha fatto il trucco per me, ma mi chiedo perché ho dovuto forzarlo. Grazie.
Luis Milanese,

Mi hai salvato la vita ...
Jean-Luc Barat,

4

Hai controllato which npme which bower, ma non hai controllato which node. Su Ubuntu, il nodepacchetto non è correlato a NodeJS. Il pacchetto NodeJS è installato come nodejs, il che interromperà qualsiasi script da cui dipende node. Questo è simile a un'altra domanda in cui un'installazione globale di jshint non funzionava .

Supponendo di aver nodejsinstallato, è possibile creare un collegamento simbolico in modo che nodepunti a nodejs:

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

Se non funziona o se preferisci non utilizzare la versione di NodeJS nei repository ufficiali, puoi installare Node da un PPA (che ti darà entrambi nodee nodejscomandi) o usare NVM (che è la mia preferenza personale, come evita la necessità di sudoinstallare moduli npm).


Bene, oltre a creare un collegamento simbolico, devo rimuovere anche il pacchetto del nodo. Come menzionato nell'altra risposta, il pacchetto di nodi si nasconde come un vero pacchetto di nodi. Quindi, anche se dopo aver creato un collegamento simbolico per nodejs, il nodecomando in realtà fa riferimento ad alcuni programmi di nodo radio pacchetto amatoriale e non ai nodi reali che desideriamo.
Lokesh Rajwani,

3

Su Ubuntu 14.04, l'ho risolto con:

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

0

Per chiunque abbia questo problema ma tutte le altre correzioni non funzionano. Ho scoperto che stavo digitando il comando sbagliato, ho pensato che fosse necessario un nodejs prima del comando come:

nodejs bower install

Ma il pergolato viene eseguito direttamente dal terminale

bower install

Stupido lo so!


0

Ubuntu 16.04 e versioni successive

In Ubuntu 16.04 e versioni successive il gestore pacchetti Bower può essere installato rapidamente e facilmente dall'app Ubuntu Software. Apri il software Ubuntu, cerca "bower" e fai clic sul pulsante Installa per installarlo. In tutte le versioni attualmente supportate di Ubuntu aprire il terminale e digitare:

sudo snap install bower --classic  

inserisci qui la descrizione dell'immagine

Il pacchetto snap pergolato verrà aggiornato automaticamente quando saranno disponibili aggiornamenti.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.