webentwicklung-frage-antwort-db.com.de

Abhängigkeiten in Visual Studio nicht installiert

Ich aktualisiere derzeit mein ASP.Net RC1 auf ASP.Net Core RC2. Der Projektmappen-Explorer in Visual Studio gibt eine Warnung vor "Abhängigkeiten - nicht installiert" mit Unterordner "npm - nicht installiert" aus. 

Die Abhängigkeiten scheinen jedoch installiert zu sein - ich habe 'npm install' im Projektverzeichnis ausgeführt und es lief einwandfrei ohne Fehler, nur ein paar Warnungen. Es hat die Abhängigkeitsordner in einen übergeordneten Ordner namens node-modules eingefügt, den ich in Windows Explorer gut sehen kann. Der Ordner "node-modules" enthält Ordner für "angle2", "bootstrap", "copy-webpack-plugin" usw. 

Weiß jemand, warum Visual Studio mir sagt, dass sie nicht installiert sind? Ich habe auch versucht, die npm-Installation von der Package Manager Console aus auszuführen und "Rechtsklick -> Wiederherstellen von Paketen" in diesen Ordnern durchzuführen, um die Warnung im Projektmappen-Explorer anzuzeigen. 

 enter image description here

Hier ist meine package.json-Datei:

{
  "name": "EmptyWebApp",
  "version": "0.0.0",
  "dependencies": {
    "angular2": "2.0.0-beta.13",
    "bootstrap": "^3.3.5",
    "es6-promise": "^3.0.2",
    "es6-shim": "^0.35.0",
    "reflect-metadata": "0.1.2",
    "jquery": "^2.1.4",
    "less": "^2.5.3",
    "lodash": "^3.10.1",
    "rxjs": "5.0.0-beta.2",
    "systemjs": "0.19.22",
    "ts-loader": "^0.7.2",
    "zone.js": "0.6.6"
  },
  "devDependencies": {
    "del": "^2.0.2",
    "event-stream": "^3.3.1",
    "copy-webpack-plugin": "^0.3.3",
    "css-loader": "^0.23.0",
    "exports-loader": "0.6.2",
    "expose-loader": "^0.7.1",
    "file-loader": "^0.8.4",
    "gulp": "^3.9.0",
    "html-webpack-plugin": "^1.7.0",
    "http-server": "^0.8.5",
    "imports-loader": "^0.6.4",
    "istanbul-instrumenter-loader": "^0.1.3",
    "json-loader": "^0.5.3",
    "nodemon":  "^1.8.1",
    "phantomjs": "^1.9.18",
    "phantomjs-polyfill": "0.0.1",
    "protractor": "^3.0.0",
    "raw-loader": "0.5.1",
    "reflect-metadata": "0.1.2",
    "remap-istanbul": "^0.5.1",
    "rimraf": "^2.4.4",
    "style-loader": "^0.13.0",
    "ts-helper": "0.0.1",
    "ts-loader": "^0.7.2",
    "tsconfig-lint": "^0.4.3",
    "tslint": "^3.2.0",
    "tslint-loader": "^2.1.0",
    "typedoc": "^0.3.12",
    "TypeScript": "1.8.9",
    "typings": "^0.6.1",
    "url-loader": "^0.5.6",
    "webpack": "^1.12.9",
    "webpack-dev-server": "^1.12.1",
    "webpack-md5-hash": "0.0.4"    
  },
  "scripts": {
    "tsc": "tsc -p . -w",
    "start": "nodemon --ignore htm,html --ext cs,js --exec \"dnx web\" -V",
    "static": "nodemon --watch ./client --ext html,css --exec \"gulp deploy-client\" -V",
    "pre-build": "gulp deploy-client",
    "webpack": "webpack",
    "webpack-watch": "webpack --watch",
    "clean": "gulp cleanwww",
    "build": "npm run pre-build && npm run webpack",
    "dnx": "dnx web"
  }
}
23
Roka545

Ich denke, das ist ein bekanntes Problem mit RC2, das in Asp Github gemeldet wurde

https://github.com/aspnet/Tooling/issues/479

Ich denke, die Funktionalität sollte funktionieren, aber die Nachricht ist falsch. Wahrscheinlich müssen wir warten, bis sie das Problem lösen.

9
Krzysztof

Dies ist immer noch ein Problem in Visual Studio Community 2015 Update 3 Edition, wenn Sie eine ASP.NET Core Web Application (.NET Framework 4.5.2) mit dem Empty ASP.NET Core Template erstellen. Es scheint ordnungsgemäß zu funktionieren, wenn Sie das Projekt mit der ASP.NET Core-Webanwendungsvorlage erstellen. 

Wie bereits erwähnt, ist die Nachricht irreführend, da die Abhängigkeiten installiert sind. Es scheint nur ein falscher Bericht von Visual Studio zu sein, dass die npm und die Abhängigkeiten nicht installiert sind. Das vorübergehende Update besteht darin, zu überschreiben, wo Visual Studio nach node.js sucht, wodurch die not installed-Nachrichten in Visual Studio entfernt werden. 

Gehen Sie in Visual Studio zu Tools > Options > Projects and Solutions > External Web Tools und fügen Sie der Installation von node.js einen Pfad hinzu. Diese befindet sich standardmäßig unter C:\Program Files\nodejs\ oder C:\Program Files (x86)\nodejs\. Verschiebt diese neue Zeile nach oben oder mindestens über die $ (VSINSTALLDIR)\Web\External-Zeile. 

 enter image description here

Stellen Sie Ihre Pakete wieder her und die Fehlermeldung sollte verschwinden.

 enter image description here

43
David Glass

Dies scheint darauf zurückzuführen zu sein, dass NPM eine Warnung über eine Komponente erzeugt, die nicht installiert werden kann, z. B. eine OSX-Komponente, wenn Sie unter Windows sind. VS interpretiert dies als Fehler, wenn es nicht wirklich . Weitere Details hier.

7
Randy Gamage

Ich hatte das gleiche Problem und folgte der aktuell am besten bewerteten Antwort, indem ich C:\Program Files\Nodejs zu den Pfaden für externe Web-Tools habe nichts unternommen. Auch das Ändern der Reihenfolge der Pfade half nicht.

>npm - v
4.2.0
>node - v
v6.10.0

Technisch können Sie den Abhängigkeitsbaum in Visual Studio erweitern, um das Problem schließlich zu finden. Es ist jedoch einfacher, npm list auszuführen und das problematische Kind zu finden.

 problem_child

Da fsevents der Täter war und eine optionale Abhängigkeit war (diese Option wird nicht verwendet, wenn ein Knoten mit Visual Studio auf einer Windows-Architektur ausgeführt wird), habe ich die Module mit optionalen Abhängigkeiten als optionale Abhängigkeit gefunden.

Für mich war es das ckokidar-Modul, es befand sich jedoch an zwei Stellen. 

MYPROJECT\node_modules\chokidar

und auch in 

MYPROJECT\node_modules\browser-sync\node_modules\chokidar

Ich vermute, wenn Sie als Abhängigkeit Abhängigkeiten haben, könnte es auch dort sein.

Was ich also für jeden dieser Ordner getan habe, habe ich die project.json-Datei geöffnet und jegliche Spur von Ereignissen in ihnen entfernt.

"dependencies": {
    ....
    "async-each": "^1.0.0", <-- also remember to remove the trailing ',' comma for the end
    "fsevents": "^1.0.0" <-- remove this
}

und

"keywords": [
    ...
    "file",       <-- remove comma
    "fsevents"    <-- remove
],

und entfernen Sie diese vollständig

"optionalDependencies": {
    "fsevents": "^1.0.0"
},

Hinterlassen Sie keine nachgestellten Kommas in einer der Dateien. Andernfalls erhalten Sie eine Fehlermeldung von npm.

Klicken Sie schließlich in Visual Studio mit der rechten Maustaste auf die Abhängigkeiten, und führen Sie Restore Packages aus. Sie sollten jetzt frei warnen! Genießen.

 result

4
Nick De Beer

Ich habe jedes Element aus der package.json-Datei entfernt, bis der Fehler nicht mehr angezeigt wird. In meinem Fall wurde der Fehler von verursacht

 "grunt-ts": "5.5.1"

2
Nigel Findlater

Öffnen Sie package.json und löschen Sie die Pakete nacheinander, bis die Warnung verschwindet.

 enter image description here

Nachdem ich "webpack": "^1.12.14", aus package.json gelöscht habe, erhalte ich keine Warnung mehr

 enter image description here

1
VK_217

Kopieren Sie einfach den Ordner node-modules aus dem Ordner nodejs in Ihren Visual Studio-, Projekt-Root-Ordner und klicken Sie mit der rechten Maustaste, um die Pakete in VS wiederherzustellen. Das wird den Trick tun!

0
samze

Ich folgte dem Rat von David Glass, obwohl es immer noch so aussah, als hätte ich ein Problem. Ich habe meine package.json-Datei so aktualisiert, dass die devDependencies mit den Abhängigkeiten übereinstimmen und dann die Warnung verschwindet.

0

Mein Problem war eines der Pakete, das das Laden aller anderen Pakete verhinderte. Der beste Weg, um herauszufinden, ob alle Ihre Pakete funktionieren, besteht darin, die Befehlszeilenschnittstelle "CMD" zu starten und zu Ihrem Projekt zu navigieren. 

npm install

und Sie werden sehen, ob alle Ihre Pakete ohne Probleme durch die Installation laufen.

Das Paket hatte ich Probleme mit dem 

Webpack "Webpack": "^ 1:12:14"

Ich musste es mit Package Installer deinstallieren. Klicken Sie mit der rechten Maustaste und deinstallieren Sie das Paket . Der NodeJS-Abhängigkeitsfehler verschwand unmittelbar danach.

Neuinstallation von der CLI durch:

npm install Paketname

Hoffentlich hilft das :-)

0
Eagle_one

Projekttyp: ASP.NET Core (.NET)

Dies kann auch passieren, wenn eine Skriptabhängigkeit fehlgeschlagen ist ..__ Das VS-Ausgabefenster zeigt den jeweiligen Fehler an.

In meinem Fall war dies Jqueryui-AMD:

remote: Repository nicht gefunden. fatal: Repository ' https://github.com/jrburke/jqueryui-AMD.git/ ' nicht gefunden

Entfernen Sie die fehlerhafte Abhängigkeit, und klicken Sie im Lösungsbasispfad mit der rechten Maustaste auf "Ordner" "Abhängigkeiten". Wählen Sie 

Restore packages
0
Legends