GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

Wie bekomme ich Jshint zum Laufen?

Ich habe jshint mit sudo npm install -g jshint installiert , und es scheint funktioniert zu haben:

$which jshint
/usr/local/bin/jshint

Dennoch wird jshint ausgeführt oder sein vollständiges Pfadäquivalent scheint nichts zu tun. Es gibt auch keinen Fehler – es tut einfach nichts:

$jshint
$jshint --help
$jshint --verbose
$jshint --debug

$jshint admin.js
$jshint admin.js --verbose
$/usr/local/bin/jshint admin.js

Ich habe auch versucht, nodejs mit dieser Antwort zu symbolisieren:

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

$jshint admin.js --verbose
$jshint admin.js
$jshint --help
$man jshint
No manual entry for jshint
See 'man 7 undocumented' for help when manual pages are not available.

Was übersehe ich hier?

Bearbeiten:Hier ist die Ausgabe von apt-cache policy nodejs npm . Ich verwende nur die Standardpakete von Ubuntu 14.04, also ist das nichts Besonderes:

└─>apt-cache policy nodejs npm
nodejs:
  Installed: 0.10.25~dfsg2-2ubuntu1
  Candidate: 0.10.25~dfsg2-2ubuntu1
  Version table:
 *** 0.10.25~dfsg2-2ubuntu1 0
        500 http://us.archive.ubuntu.com/ubuntu/ trusty/universe amd64 Packages
        100 /var/lib/dpkg/status
npm:
  Installed: 1.3.10~dfsg-1
  Candidate: 1.3.10~dfsg-1
  Version table:
 *** 1.3.10~dfsg-1 0
        500 http://us.archive.ubuntu.com/ubuntu/ trusty/universe amd64 Packages
        100 /var/lib/dpkg/status

Akzeptierte Antwort:

Die offiziellen Repos sind ein Durcheinander...

Die Installation von Node und npm über die offiziellen Repositories hat mir immer Probleme bereitet. Ich vermute, dass dies an Tools liegen könnte, die von node abhängen , wenn der eigentliche Befehl auf Ubuntu nodejs ist , weshalb das Erstellen eines Symlinks sollte Arbeit. Bei meinem Schnelltest in einer virtuellen Maschine hat es bei mir funktioniert, aber da es bei dir nicht funktioniert hat, versuchen wir etwas anderes …

Also installieren Sie Node.JS auf eine andere Art

Ich bevorzuge im Allgemeinen die Installation von Node auf Ubuntu mit NVM. Dadurch wird das Problem des node vermieden Der Befehl ist unter Ubuntu nicht definiert und vermeidet das Durcheinander von Berechtigungen, das die Verwendung von sudo erfordert um npm-Module zu installieren.

Gehen Sie wie folgt vor, um wieder auf Null zu kommen:

Entfernen Sie alle globalen Module, die Sie mit npm installiert haben (Anweisungen hier):

sudo npm list -g --depth=0. | awk -F ' ' '{print $2}' | awk -F '@' '{print $1}'  | sudo xargs npm remove -g

Symlink-Knotenordner entfernen:

sudo rm /usr/bin/node

Deinstallieren Sie die Kopien von nodejs und npm die Sie über die Repositories von Ubuntu installiert haben:

sudo apt-get remove --purge nodejs npm

Bereinigen Sie alle anderen Cruft:

sudo apt-get autoremove

An dieser Stelle which node , which nodejs , which npm , und which jshint sollten alle nichts zurückgeben.

Node neu installieren und dabei die offiziellen Repositories überspringen

Holen Sie sich die neueste Kopie von NVM (möglicherweise müssen Sie sudo apt-get install curl ausführen zuerst):

curl https://raw.githubusercontent.com/creationix/nvm/v0.15.0/install.sh | bash

Sagen Sie Ihrer Shell, dass sie nvm verwenden soll

source ~/.nvm/nvm.sh

Installieren Sie dann eine Knotenversion

nvm install 0.12 # or whatever the latest version is

Und teilen Sie nvm mit, welche Version von Node Sie verwenden möchten

nvm use 0.12

Jetzt sollten Sie Node mit dem node ausführen können Befehl sollten Sie in der Lage sein, Module global ohne sudo zu installieren , und Sie sollten am Ende eine funktionierende Kopie von jshint haben.

Verwandt:Die Bildschirmtastatur wird angezeigt, wenn ich den Bildschirm in Ubuntu berühre?

Wenn Sie nvm use v0.12 Jedes Mal, wenn Sie eine neue Terminalsitzung starten, können Sie nvm use v hinzufügen zu Ihrem ~/.bashrc . Das v ist nichts Besonderes, es passt einfach zu v* und finden Sie die neueste Version. Alternativ könnten Sie eine bestimmte Version fest codieren.


Ubuntu
  1. So installieren Sie Node.js und NPM unter CentOS

  2. So installieren Sie Node.js und npm unter Debian 11

  3. Wie bekomme ich Uuencode zum Laufen?

  4. Wie bekomme ich eine Broadcom Bcm4312 Wireless-Karte zum Laufen??

  5. Wie bekomme ich eine neue Webcam-Kamera von Tecknet zum Laufen?

So installieren Sie Node.js und NPM unter Ubuntu 18.04

So installieren Sie Node.js und NPM unter Debian 11

Wie installiere ich Node.js und Npm in Ubuntu?

So installieren Sie Node.js und npm unter Ubuntu Linux

So docken Sie eine Node.js-Web-App an

So installieren Sie Node.js und Npm unter Ubuntu 22.04