2013-09-12 1 views
13

Я изучал AngularJS и после его шагов установки, но я получаю сообщение об ошибке: 1:npm install -g karma error MSB4019: импортированный проект «C: Microsoft.Cpp.Default.props» не найден

npm install -g karma 

Вот полный выход:

Microsoft Windows [Version 6.2.9200] 
(c) 2012 Microsoft Corporation. All rights reserved. 

C:\Users\Travis>node --version 
v0.10.18 

C:\Users\Travis>python --version 
Python 2.7.3 

C:\Users\Travis>npm install -g karma 
npm http GET https://registry.npmjs.org/karma 
npm http 304 https://registry.npmjs.org/karma 
npm http GET https://registry.npmjs.org/di 
npm http GET https://registry.npmjs.org/socket.io 
npm http GET https://registry.npmjs.org/chokidar 
npm http GET https://registry.npmjs.org/coffee-script 
npm http GET https://registry.npmjs.org/http-proxy 
npm http GET https://registry.npmjs.org/colors/0.6.0-1 
npm http GET https://registry.npmjs.org/rimraf 
npm http GET https://registry.npmjs.org/minimatch 
npm http GET https://registry.npmjs.org/mime 
npm http GET https://registry.npmjs.org/useragent 
npm http GET https://registry.npmjs.org/graceful-fs 
npm http GET https://registry.npmjs.org/lodash 
npm http GET https://registry.npmjs.org/log4js 
npm http GET https://registry.npmjs.org/q 
npm http GET https://registry.npmjs.org/glob 
npm http GET https://registry.npmjs.org/connect 
npm http GET https://registry.npmjs.org/optimist 
npm http 304 https://registry.npmjs.org/socket.io 
npm http 304 https://registry.npmjs.org/di 
npm http 304 https://registry.npmjs.org/chokidar 
npm http 304 https://registry.npmjs.org/coffee-script 
npm http 304 https://registry.npmjs.org/colors/0.6.0-1 
npm http 304 https://registry.npmjs.org/http-proxy 
npm http 304 https://registry.npmjs.org/rimraf 
npm http 304 https://registry.npmjs.org/minimatch 
npm http 304 https://registry.npmjs.org/mime 
npm http 304 https://registry.npmjs.org/useragent 
npm http 304 https://registry.npmjs.org/graceful-fs 
npm http 304 https://registry.npmjs.org/lodash 
npm http 304 https://registry.npmjs.org/log4js 
npm http 304 https://registry.npmjs.org/q 
npm http 304 https://registry.npmjs.org/glob 
npm http 304 https://registry.npmjs.org/connect 
npm http 304 https://registry.npmjs.org/optimist 
npm http GET https://registry.npmjs.org/lru-cache 
npm http GET https://registry.npmjs.org/sigmund 
npm http GET https://registry.npmjs.org/inherits 
npm http GET https://registry.npmjs.org/wordwrap 
npm http GET https://registry.npmjs.org/socket.io-client/0.9.16 
npm http GET https://registry.npmjs.org/policyfile/0.0.4 
npm http GET https://registry.npmjs.org/base64id/0.1.0 
npm http GET https://registry.npmjs.org/redis/0.7.3 
npm http 304 https://registry.npmjs.org/sigmund 
npm http 304 https://registry.npmjs.org/lru-cache 
npm http 304 https://registry.npmjs.org/policyfile/0.0.4 
npm http 304 https://registry.npmjs.org/base64id/0.1.0 
npm http 304 https://registry.npmjs.org/wordwrap 
npm http 304 https://registry.npmjs.org/redis/0.7.3 
npm http 304 https://registry.npmjs.org/inherits 
npm http 304 https://registry.npmjs.org/socket.io-client/0.9.16 
npm http GET https://registry.npmjs.org/pkginfo 
npm http GET https://registry.npmjs.org/utile 
npm http GET https://registry.npmjs.org/qs/0.6.5 
npm http GET https://registry.npmjs.org/cookie-signature/1.0.1 
npm http GET https://registry.npmjs.org/formidable/1.0.14 
npm http GET https://registry.npmjs.org/cookie/0.1.0 
npm http GET https://registry.npmjs.org/buffer-crc32/0.2.1 
npm http GET https://registry.npmjs.org/send/0.1.4 
npm http GET https://registry.npmjs.org/bytes/0.2.0 
npm http GET https://registry.npmjs.org/fresh/0.2.0 
npm http GET https://registry.npmjs.org/pause/0.0.1 
npm http GET https://registry.npmjs.org/uid2/0.0.2 
npm http GET https://registry.npmjs.org/debug 
npm http GET https://registry.npmjs.org/methods/0.0.1 
npm http 304 https://registry.npmjs.org/pkginfo 
npm http 304 https://registry.npmjs.org/utile 
npm http 304 https://registry.npmjs.org/qs/0.6.5 
npm http 304 https://registry.npmjs.org/cookie/0.1.0 
npm http 304 https://registry.npmjs.org/cookie-signature/1.0.1 
npm http 304 https://registry.npmjs.org/buffer-crc32/0.2.1 
npm http 304 https://registry.npmjs.org/send/0.1.4 
npm http 304 https://registry.npmjs.org/bytes/0.2.0 
npm http 304 https://registry.npmjs.org/fresh/0.2.0 
npm http 304 https://registry.npmjs.org/pause/0.0.1 
npm http 304 https://registry.npmjs.org/formidable/1.0.14 
npm http 304 https://registry.npmjs.org/uid2/0.0.2 
npm http 304 https://registry.npmjs.org/debug 
npm http 304 https://registry.npmjs.org/methods/0.0.1 
npm http GET https://registry.npmjs.org/range-parser/0.0.4 
npm http GET https://registry.npmjs.org/i 
npm http GET https://registry.npmjs.org/mkdirp 
npm http GET https://registry.npmjs.org/deep-equal 
npm http GET https://registry.npmjs.org/ncp 
npm http GET https://registry.npmjs.org/async 
npm http 304 https://registry.npmjs.org/range-parser/0.0.4 
npm http 304 https://registry.npmjs.org/deep-equal 
npm http 304 https://registry.npmjs.org/ncp 
npm http 304 https://registry.npmjs.org/async 
npm http GET https://registry.npmjs.org/dequeue/1.0.3 
npm http GET https://registry.npmjs.org/async/0.1.15 
npm http GET https://registry.npmjs.org/semver 
npm http 304 https://registry.npmjs.org/mkdirp 
npm http 304 https://registry.npmjs.org/i 
npm http GET https://registry.npmjs.org/readable-stream 
npm http 304 https://registry.npmjs.org/dequeue/1.0.3 
npm http 304 https://registry.npmjs.org/async/0.1.15 
npm http 304 https://registry.npmjs.org/readable-stream 
npm http 304 https://registry.npmjs.org/semver 
npm http GET https://registry.npmjs.org/xmlhttprequest/1.4.2 
npm http GET https://registry.npmjs.org/uglify-js/1.2.5 
npm http GET https://registry.npmjs.org/ws 
npm http GET https://registry.npmjs.org/active-x-obfuscator/0.0.1 
npm http 304 https://registry.npmjs.org/xmlhttprequest/1.4.2 
npm http 304 https://registry.npmjs.org/uglify-js/1.2.5 
npm http 304 https://registry.npmjs.org/active-x-obfuscator/0.0.1 
npm http 304 https://registry.npmjs.org/ws 
npm http GET https://registry.npmjs.org/zeparser/0.0.5 
npm http 304 https://registry.npmjs.org/zeparser/0.0.5 
npm http GET https://registry.npmjs.org/tinycolor 
npm http GET https://registry.npmjs.org/commander 
npm http GET https://registry.npmjs.org/nan 
npm http GET https://registry.npmjs.org/options 
npm http 304 https://registry.npmjs.org/nan 
npm http 304 https://registry.npmjs.org/options 
npm http 304 https://registry.npmjs.org/commander 
npm http 304 https://registry.npmjs.org/tinycolor 

> [email protected] install C:\Users\Travis\AppData\Roaming\npm\node_modules\karma\node_modules\socket.io\node_modules\socket.io 
-client\node_modules\ws 
> (node-gyp rebuild 2> builderror.log) || (exit 0) 


C:\Users\Travis\AppData\Roaming\npm\node_modules\karma\node_modules\socket.io\node_modules\socket.io-client\node_modules 
\ws>node "C:\Program Files (x86)\nodejs\node_modules\npm\bin\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" 
rebuild 
Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch. 
C:\Users\Travis\AppData\Roaming\npm\node_modules\karma\node_modules\socket.io\node_modules\socket.io-client\node_module 
s\ws\build\bufferutil.vcxproj(18,3): error MSB4019: The imported project "C:\Microsoft.Cpp.Default.props" was not found 
. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk. 
C:\Users\Travis\AppData\Roaming\npm\node_modules\karma\node_modules\socket.io\node_modules\socket.io-client\node_module 
s\ws\build\validation.vcxproj(18,3): error MSB4019: The imported project "C:\Microsoft.Cpp.Default.props" was not found 
. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk. 
C:\Users\Travis\AppData\Roaming\npm\karma -> C:\Users\Travis\AppData\Roaming\npm\node_modules\karma\bin\karma 
[email protected] C:\Users\Travis\AppData\Roaming\npm\node_modules\karma 
├── [email protected] 
├── [email protected] 
├── [email protected] 
├── [email protected] 
├── [email protected] 
├── [email protected] 
├── [email protected] 
├── [email protected] 
├── [email protected] ([email protected], [email protected]) 
├── [email protected] ([email protected]) 
├── [email protected] ([email protected]) 
├── [email protected] 
├── [email protected] ([email protected]) 
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], b 
[email protected], [email protected], [email protected], [email protected], [email protected]) 
├── [email protected] ([email protected], [email protected]) 
├── [email protected] ([email protected], [email protected], [email protected], [email protected]) 
└── [email protected] ([email protected], [email protected], [email protected], [email protected]) 

это походит на версию MSBuild, который работает (12.0, я считаю) не правильно решение $(VCTargetsPath) переменных в файле vcxproj ,

ответ

17

У меня была такая же проблема с другими модулями после установки VS Express 2013 для Интернета наряду с VS Express 2012 для Windows. Решение было установить VS 2013 для Windows, и использовать переключатель

npm install --msvs_version=2013 
+3

Удивительно, это сработало отлично! Чтобы быть ясным, команда foll для установки AngularJS с 2013 года - это npm install -g karma --msvs_version = 2013' – travis

+0

Большое спасибо! У меня была такая же проблема с установкой strongloop. С переключателем он начал работать. –

+0

Важно знать, что для этого вам потребуется как минимум VS Express для рабочего стола. У меня только VS Express для веб-установки, rhis, похоже, недостаточно. –

2

Если у вас нет Visual Studio, вы обязательно должны ответить на https://stackoverflow.com/a/18779641/530967.

В принципе, вам необходимо установить некоторую версию Visual Studio 2010 (версия Express бесплатна), затем Windows SDK, затем VS SP1, а затем обновление компилятора VC++, все в этом порядке. После этого эта проблема должна исчезнуть (как и для меня.)

+0

Спасибо, я не понимал, что порядок важен. У меня также установлен 2013, который, вероятно, вмешивается. – travis

30

Для тех, кто по-прежнему работать на ошибки после установки VS с Windows SDK и пытается решение Besrl, в частности node-gyp неудачу с

Error MSB4019: The imported project "X:\Microsoft.Cpp.Default.props" was not found,

Попробуйте запустить npm install команды из командной строки МСВС.

Найти в Start menu>Microsoft Visual Studio 201X>Visual Studio Tools>Open Visual Studio 201X Tools Command Prompt или запустить <Program Files>\<VS dir>\Common7\Tools\VsDevCmd.bat из командной строки.

Выше работал для меня с VS2012, и this Github comment помог мне найти это.

+0

Это отлично подойдило мне. Спасибо! – NateTheGreatt

+1

Спасибо, ОЧЕНЬ МНОГО, что он работал .. и был готов на этот раз наброситься на твою голову !!!!! –

+0

в течение двух дней ... Большое спасибо !!! – Moozz

11

Убедитесь, что все необходимое программное обеспечение для запуска node-gyp:

Вы можете настроить версию Visual Studio используется gyp через переменную окружения, так что вы можете избежать необходимости установите свойство --msvs_version=2012 для будущих установок.

Примеры:

  • набор GYP_MSVS_VERSION=2012 для Visual Studio 2012
  • набор GYP_MSVS_VERSION=2013e ('Е' означает 'экспресс-выпуск')

Для полный список - https://github.com/joyent/node/blob/v0.10.29/tools/gyp/pylib/gyp/MSVSVersion.py#L209-294

Это по-прежнему болезненно для пользователей Windows из NodeJS, поскольку предполагает, что у вас есть копия Python и Visual Studio установлен, но у многих конечных пользователей этого никогда не будет. Поэтому я лоббирую Joyent, чтобы побудить их включать веб-сокеты как часть узла CORE, а также отправить компилятор GNU gcc как часть установки NodeJS, чтобы мы могли навсегда устранить эту проблему.

Вы можете добавить свой голос в:

6

На окнах самый простой способ, который я нашел, чтобы исправить это, чтобы установить окна-сборки-инструменты, как это было рекомендовано README для узла-GYD

npm install --global --production windows-build-tools 

https://github.com/nodejs/node-gyp

Таким образом, мне не пришлось возиться с установкой python или других пакетов dist.

+0

Огромное вам спасибо! Мне пришлось выполнить его с правами администратора, после чего установка была окончательно обработана. – Jesse