![](/img/trans.png)
[英]MSBuild 16 is not publishing without visual studio installed
[英]Dependencies not installed in Visual Studio
我目前正在将ASP.Net RC1升级到ASP.Net Core RC2。 Visual Studio中的解决方案资源管理器通过子文件夹“npm - not installed”向我发出“Dependencies - not installed”的警告。
但是,似乎安装了依赖项 - 我在项目目录中运行'npm install'并且运行正常,没有任何错误,只是一些警告。 它将依赖项文件夹添加到名为node-modules的父文件夹中,我可以在Windows资源管理器中清楚地看到它。 node-modules文件夹包含angular2,bootstrap,copy-webpack-plugin等文件夹。
有谁知道为什么Visual Studio告诉我他们没有安装? 我还尝试从Package Manager Console运行npm install,并在这些文件夹上执行“右键单击 - >还原包”,在解决方案资源管理器中给出警告。
这是我的package.json文件:
{
"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"
}
}
在使用Empty ASP.NET Core Template
创建ASP.NET Core Web Application (.NET Framework 4.5.2)
时,这仍然是Visual Studio Community 2015,Update 3版本中的一个问题。 使用ASP.NET Core Web应用程序模板创建项目时,它似乎正常运行。
正如操作中提到的那样,由于安装了依赖项,因此该消息具有误导性。 Visual Studio似乎只是误报了npm和依赖项没有安装。 临时修复是覆盖Visual Studio正在寻找node.js的位置,这将删除visual studio中not installed
消息。
在Visual Studio中,转到“ Tools > Options > Projects and Solutions > External Web Tools
然后添加node.js安装的路径。 默认位于C:\\Program Files\\nodejs\\
或C:\\Program Files (x86)\\nodejs\\
将此新行移至顶部或至少高于$(VSINSTALLDIR)\\ Web \\ External行。
恢复您的包,错误消息应该消失。
我认为这是在asp github上报道的RC2的已知问题
https://github.com/aspnet/Tooling/issues/479
我认为功能应该可行,但消息是错误的,所以我们可能需要等到他们解决问题。
这似乎是由于NPM对无法安装的组件发出警告,例如OSX组件(如果您在Windows上)。 VS将其解释为失败,而实际上并非如此。 更多细节在这里。
我遇到了同样的问题,并通过将C:\\Program Files\\Nodejs
到我的外部Web工具路径而遵循当前最高投票答案没有做任何事情 。 即使改变路径的顺序也无济于事。
>npm - v
4.2.0
>node - v
v6.10.0
从技术上讲,您可以在visual studio中扩展依赖关系树以最终找到问题,但是,更容易运行npm list
并找到问题子项。
因为fsevents
是罪魁祸首,它是一个可选的依赖项(在Windows体系结构上使用visual studio运行节点时不使用它),我将具有fsevents的模块定位为可选依赖项。
对我来说它是ckokidar
模块,但它位于两个地方。
MYPROJECT \\ node_modules \\ chokidar
还有
MYPROJECT \\ node_modules \\浏览器同步\\ node_modules \\ chokidar
我怀疑你是否有gulp-watch作为依赖,它也可能存在。
所以我做的是每个文件夹,我打开了project.json
文件并删除了其中的任何fsevents轨道。
"dependencies": {
....
"async-each": "^1.0.0", <-- also remember to remove the trailing ',' comma for the end
"fsevents": "^1.0.0" <-- remove this
}
和
"keywords": [
...
"file", <-- remove comma
"fsevents" <-- remove
],
并完全删除它
"optionalDependencies": {
"fsevents": "^1.0.0"
},
不要在任何文件中留下任何尾随逗号,否则你将从npm收到错误。
最后,右键单击Dependencies上的Visual Studio并运行Restore Packages
。 你现在应该免费警告! 请享用。
我从package.json文件中删除了每个项目,直到错误停止出现。 在我的情况下,错误是由
“grunt-ts”:“5.5.1”
只需将node-modules文件夹中的node-modules文件夹复制并粘贴到visual studio,项目根文件夹,然后右键单击并恢复VS中的软件包即可。 那就行了!
我遵循大卫玻璃的建议,虽然看起来我仍然有问题。 我更新了我的package.json文件,以便devDependencies与依赖项匹配,然后警告就消失了。
项目类型:ASP.NET Core(.NET)
如果您的脚本依赖项无法安装,也会发生这种情况。 VS Output窗口将显示相应的错误。
在我的情况下,这是jqueryui-amd:
remote:找不到存储库。 致命:未找到存储库' https://github.com/jrburke/jqueryui-amd.git/ '
删除失败的依赖关系,右键单击解决方案基本路径中的Dependencies“folder”,然后选择
Restore packages
我的问题是阻止所有其他软件包加载的软件包之一,这是查看所有软件包是否可以启动命令行界面“CMD”并导航到项目的最佳方法 - >类型:
npm install
并且您将看到所有数据包是否都没有问题地通过安装。
包裹我遇到了问题
Webpack“Webpack”:“^ 1:12:14”
我不得不使用Package Installer工具卸载它。 只需右键单击并卸载包。 NodeJS依赖关系错误之后立即消失。
通过以下方式从CLI重新安装:
npm install packagename
希望有所帮助:-)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.