Почему NPM не может правильно установить @ sentry / node? - PullRequest
0 голосов
/ 12 декабря 2018

Я не могу require('@sentry/node').Похоже, что в последнем установленном пакете нет файла index.js.В package.json также нет ссылки на каталог dist.

$ npm -v
5.6.0
$ node -v
v9.4.0
$ npm install @sentry/node@4.4.1
npm WARN backend@0.0.0 No repository field.
npm WARN backend@0.0.0 No license field.

+ @sentry/node@4.4.1
added 272 packages in 7.552s
$ npm ls
backend@0.0.0 /Users/holmes/Code/backend
├─┬ UNMET DEPENDENCY @sentry/node@4.4.1
│ ├─┬ UNMET DEPENDENCY @sentry/core@4.4.1
│ │ ├── UNMET DEPENDENCY @sentry/hub@4.4.1
│ │ ├─┬ UNMET DEPENDENCY @sentry/minimal@4.4.1
│ │ │ ├── UNMET DEPENDENCY @sentry/hub@4.4.1
│ │ │ ├── UNMET DEPENDENCY @sentry/types@4.4.1
│ │ │ └── tslib@1.9.3 deduped
│ │ ├── UNMET DEPENDENCY @sentry/types@4.4.1
│ │ ├── UNMET DEPENDENCY @sentry/utils@4.4.1
│ │ └── tslib@1.9.3 deduped
│ ├─┬ UNMET DEPENDENCY @sentry/hub@4.4.1
│ │ ├── UNMET DEPENDENCY @sentry/types@4.4.1
│ │ ├── UNMET DEPENDENCY @sentry/utils@4.4.1
│ │ └── tslib@1.9.3 deduped
│ ├── UNMET DEPENDENCY @sentry/types@4.4.1
│ ├─┬ UNMET DEPENDENCY @sentry/utils@4.4.1
│ │ ├── UNMET DEPENDENCY @sentry/types@4.4.1
│ │ └── tslib@1.9.3 deduped
│ ├── UNMET DEPENDENCY @types/stack-trace@0.0.29
│ ├── cookie@0.3.1
│ ├─┬ https-proxy-agent@2.2.1
│ │ ├─┬ agent-base@4.2.1
│ │ │ └─┬ es6-promisify@5.0.0
│ │ │   └── es6-promise@4.2.5
│ │ └─┬ debug@3.2.6
│ │   └── ms@2.1.1
│ ├── lsmod@1.0.0
│ ├── stack-trace@0.0.10
│ └── tslib@1.9.3
├─┬ cheerio@0.16.0
│ ├─┬ CSSselect@0.4.1
│ │ ├── CSSwhat@0.4.7
│ │ └─┬ domutils@1.4.3
│ │   └── domelementtype@1.3.1 deduped
│ ├── entities@1.1.2
│ ├─┬ htmlparser2@3.7.3
│ │ ├── domelementtype@1.3.1
│ │ ├─┬ domhandler@2.2.1
│ │ │ └── domelementtype@1.3.1 deduped
│ │ ├─┬ domutils@1.5.1
│ │ │ ├─┬ dom-serializer@0.1.0
│ │ │ │ ├── domelementtype@1.1.3
│ │ │ │ └── entities@1.1.2 deduped
│ │ │ └── domelementtype@1.3.1 deduped
│ │ ├── entities@1.0.0
│ │ └── readable-stream@1.1.14 deduped
│ └── lodash@2.4.2
├── cron@1.0.4
├── ejs@1.0.0
├─┬ geoip-lite@1.1.9
│ ├─┬ async@2.6.1
│ │ └── lodash@4.17.11
│ ├── colors@1.3.3
│ ├─┬ glob@7.1.3
│ │ ├── fs.realpath@1.0.0
│ │ ├─┬ inflight@1.0.6
│ │ │ ├── once@1.4.0 deduped
│ │ │ └── wrappy@1.0.2
│ │ ├── inherits@2.0.3
│ │ ├─┬ minimatch@3.0.4
│ │ │ └─┬ brace-expansion@1.1.11
│ │ │   ├── balanced-match@1.0.0
│ │ │   └── concat-map@0.0.1
│ │ ├─┬ once@1.4.0
│ │ │ └── wrappy@1.0.2 deduped
│ │ └── path-is-absolute@1.0.1
│ ├─┬ iconv-lite@0.4.24
│ │ └── safer-buffer@2.1.2
│ ├── lazy@1.0.11
│ ├─┬ rimraf@2.6.2
│ │ └── glob@7.1.3 deduped
│ └─┬ unzip@0.1.11
│   ├─┬ binary@0.3.0
│   │ ├── buffers@0.1.1
│   │ └─┬ chainsaw@0.1.0
│   │   └── traverse@0.3.9 deduped
│   ├─┬ fstream@0.1.31
│   │ ├─┬ graceful-fs@3.0.11
│   │ │ └── natives@1.1.6
│   │ ├── inherits@2.0.3 deduped
│   │ ├── mkdirp@0.5.1 deduped
│   │ └── rimraf@2.6.2 deduped
│   ├─┬ match-stream@0.0.2
│   │ ├── buffers@0.1.1 deduped
│   │ └─┬ readable-stream@1.0.34
│   │   ├── core-util-is@1.0.2 deduped
│   │   ├── inherits@2.0.3 deduped
│   │   ├── isarray@0.0.1 deduped
│   │   └── string_decoder@0.10.31 deduped
│   ├─┬ pullstream@0.4.1
│   │ ├── over@0.0.5
│   │ ├─┬ readable-stream@1.0.34
│   │ │ ├── core-util-is@1.0.2 deduped
│   │ │ ├── inherits@2.0.3 deduped
│   │ │ ├── isarray@0.0.1 deduped
│   │ │ └── string_decoder@0.10.31 deduped
│   │ ├── setimmediate@1.0.5 deduped
│   │ └─┬ slice-stream@1.0.0
│   │   └─┬ readable-stream@1.0.34
│   │     ├── core-util-is@1.0.2 deduped
│   │     ├── inherits@2.0.3 deduped
│   │     ├── isarray@0.0.1 deduped
│   │     └── string_decoder@0.10.31 deduped
│   ├─┬ readable-stream@1.0.34
│   │ ├── core-util-is@1.0.2 deduped
│   │ ├── inherits@2.0.3 deduped
│   │ ├── isarray@0.0.1 deduped
│   │ └── string_decoder@0.10.31 deduped
│   └── setimmediate@1.0.5 deduped
├─┬ gm@1.16.0
│ ├── array-parallel@0.1.3
│ ├── array-series@0.1.5
│ ├── debug@0.7.0
│ ├── stream-to-buffer@0.0.1
│ └── through@2.3.8
├── iz@0.4.1
├─┬ jade@1.3.1
│ ├── character-parser@1.2.0
│ ├── commander@2.1.0
│ ├─┬ constantinople@2.0.1
│ │ └─┬ uglify-js@2.4.24
│ │   ├── async@0.2.10
│ │   ├─┬ source-map@0.1.34
│ │   │ └── amdefine@1.0.1
│ │   ├── uglify-to-browserify@1.0.2
│ │   └─┬ yargs@3.5.4
│ │     ├── camelcase@1.2.1
│ │     ├── decamelize@1.2.0
│ │     ├── window-size@0.1.0
│ │     └── wordwrap@0.0.2
│ ├── mkdirp@0.3.5
│ ├─┬ monocle@1.1.51
│ │ └─┬ readdirp@0.2.5
│ │   └── minimatch@3.0.4 deduped
│ ├─┬ transformers@2.1.0
│ │ ├─┬ css@1.0.8
│ │ │ ├── css-parse@1.0.4
│ │ │ └── css-stringify@1.0.5
│ │ ├─┬ promise@2.0.0
│ │ │ └── is-promise@1.0.1
│ │ └─┬ uglify-js@2.2.5
│ │   ├─┬ optimist@0.3.7
│ │   │ └── wordwrap@0.0.2 deduped
│ │   └── source-map@0.1.34 deduped
│ └─┬ with@3.0.1
│   └── uglify-js@2.4.24 deduped
├─┬ juice@1.0.0
│ ├── batch@0.5.2
│ ├─┬ cheerio@0.18.0
│ │ ├── CSSselect@0.4.1 deduped
│ │ ├─┬ dom-serializer@0.0.1
│ │ │ ├── domelementtype@1.1.3
│ │ │ └── entities@1.1.2 deduped
│ │ ├── entities@1.1.2 deduped
│ │ ├─┬ htmlparser2@3.8.3
│ │ │ ├── domelementtype@1.1.3 deduped
│ │ │ ├─┬ domhandler@2.3.0
│ │ │ │ └── domelementtype@1.1.3 deduped
│ │ │ ├─┬ domutils@1.5.1
│ │ │ │ ├── dom-serializer@0.0.1 deduped
│ │ │ │ └── domelementtype@1.1.3 deduped
│ │ │ ├── entities@1.0.0
│ │ │ └── readable-stream@1.1.14 deduped
│ │ └── lodash@2.4.2 deduped
│ ├── commander@2.3.0
│ ├── cssom@0.3.0
│ ├── slick@1.12.1
│ └─┬ web-resource-inliner@1.0.0
│   ├── async@0.9.2
│   ├─┬ clean-css@1.1.7
│   │ └── commander@2.0.0
│   ├─┬ datauri@0.2.1
│   │ ├── mimer@0.3.2
│   │ └── templayed@0.2.3
│   ├─┬ request@2.88.0
│   │ ├── aws-sign2@0.7.0
│   │ ├── aws4@1.8.0 deduped
│   │ ├── caseless@0.12.0 deduped
│   │ ├─┬ combined-stream@1.0.7
│   │ │ └── delayed-stream@1.0.0
│   │ ├── extend@3.0.2 deduped
│   │ ├── forever-agent@0.6.1
│   │ ├─┬ form-data@2.3.3
│   │ │ ├── asynckit@0.4.0 deduped
│   │ │ ├── combined-stream@1.0.7 deduped
│   │ │ └── mime-types@2.1.21 deduped
│   │ ├── har-validator@5.1.3 deduped
│   │ ├─┬ http-signature@1.2.0
│   │ │ ├── assert-plus@1.0.0
│   │ │ ├── jsprim@1.4.1 deduped
│   │ │ └── sshpk@1.15.2 deduped
│   │ ├── is-typedarray@1.0.0 deduped
│   │ ├── isstream@0.1.2 deduped
│   │ ├── json-stringify-safe@5.0.1 deduped
│   │ ├── mime-types@2.1.21 deduped
│   │ ├── oauth-sign@0.9.0
│   │ ├── performance-now@2.1.0 deduped
│   │ ├── qs@6.5.2
│   │ ├── safe-buffer@5.1.2 deduped
│   │ ├─┬ tough-cookie@2.4.3
│   │ │ ├── psl@1.1.29 deduped
│   │ │ └── punycode@1.4.1
│   │ ├─┬ tunnel-agent@0.6.0
│   │ │ └── safe-buffer@5.1.2 deduped
│   │ └── uuid@3.3.2
│   ├─┬ uglify-js@2.4.1
│   │ ├── async@0.2.10
│   │ ├── optimist@0.3.7 deduped
│   │ ├── source-map@0.1.34 deduped
│   │ └── uglify-to-browserify@1.0.2 deduped
│   └── xtend@4.0.1
├─┬ kava@0.1.1-alpha
│ └─┬ mysql@0.9.6
│   └─┬ hashish@0.0.4
│     └── traverse@0.3.9
├─┬ knox@0.9.0
│ ├─┬ debug@1.0.2
│ │ └── ms@0.6.2
│ ├── mime@1.2.11
│ ├── once@1.3.0
│ ├── stream-counter@1.0.0
│ └─┬ xml2js@0.4.4
│   ├── sax@0.6.0
│   └─┬ xmlbuilder@2.2.1
│     └── lodash-node@2.4.1
├── marked@0.3.19
├─┬ mkdirp@0.5.1
│ └── minimist@0.0.8
├── moment@2.6.0
├─┬ mysql@2.3.2
│ ├── bignumber.js@1.4.0
│ ├─┬ readable-stream@1.1.14
│ │ ├── core-util-is@1.0.2
│ │ ├── inherits@2.0.3 deduped
│ │ ├── isarray@0.0.1
│ │ └── string_decoder@0.10.31
│ └── require-all@0.0.8
├─┬ nib@1.0.4
│ └── stylus@0.45.1 deduped
├─┬ nodemailer@0.6.5
│ ├─┬ directmail@0.1.8
│ │ └── simplesmtp@0.3.35 deduped
│ ├── he@0.3.6
│ ├─┬ mailcomposer@0.2.12
│ │ ├─┬ dkim-signer@0.1.2
│ │ │ ├── mimelib@0.2.19 deduped
│ │ │ └── punycode@1.2.4
│ │ ├─┬ follow-redirects@0.0.3
│ │ │ └── underscore@1.9.1
│ │ ├── he@0.3.6 deduped
│ │ ├── mime@1.2.11 deduped
│ │ └─┬ mimelib@0.2.19
│ │   ├── addressparser@0.3.2
│ │   └─┬ encoding@0.1.12
│ │     └── iconv-lite@0.4.24 deduped
│ ├── public-address@0.1.2
│ ├── readable-stream@1.1.14 deduped
│ └─┬ simplesmtp@0.3.35
│   ├── rai@0.1.12
│   └── xoauth2@0.1.8
├─┬ open-graph@0.1.7
│ ├─┬ cheerio@0.17.0
│ │ ├── CSSselect@0.4.1 deduped
│ │ ├─┬ dom-serializer@0.0.1
│ │ │ ├── domelementtype@1.1.3
│ │ │ └── entities@1.1.2 deduped
│ │ ├── entities@1.1.2 deduped
│ │ ├── htmlparser2@3.7.3 deduped
│ │ └── lodash@2.4.2 deduped
│ └─┬ request@2.88.0
│   ├── aws-sign2@0.7.0
│   ├── aws4@1.8.0
│   ├── caseless@0.12.0
│   ├─┬ combined-stream@1.0.7
│   │ └── delayed-stream@1.0.0
│   ├── extend@3.0.2
│   ├── forever-agent@0.6.1
│   ├─┬ form-data@2.3.3
│   │ ├── asynckit@0.4.0
│   │ ├── combined-stream@1.0.7 deduped
│   │ └── mime-types@2.1.21 deduped
│   ├─┬ har-validator@5.1.3
│   │ ├─┬ ajv@6.6.1
│   │ │ ├── fast-deep-equal@2.0.1
│   │ │ ├── fast-json-stable-stringify@2.0.0
│   │ │ ├── json-schema-traverse@0.4.1
│   │ │ └─┬ uri-js@4.2.2
│   │ │   └── punycode@2.1.1 deduped
│   │ └── har-schema@2.0.0
│   ├─┬ http-signature@1.2.0
│   │ ├── assert-plus@1.0.0
│   │ ├─┬ jsprim@1.4.1
│   │ │ ├── assert-plus@1.0.0
│   │ │ ├── extsprintf@1.3.0
│   │ │ ├── json-schema@0.2.3
│   │ │ └─┬ verror@1.10.0
│   │ │   ├── assert-plus@1.0.0
│   │ │   ├── core-util-is@1.0.2 deduped
│   │ │   └── extsprintf@1.3.0 deduped
│   │ └─┬ sshpk@1.15.2
│   │   ├─┬ asn1@0.2.4
│   │   │ └── safer-buffer@2.1.2 deduped
│   │   ├── assert-plus@1.0.0
│   │   ├─┬ bcrypt-pbkdf@1.0.2
│   │   │ └── tweetnacl@0.14.5 deduped
│   │   ├─┬ dashdash@1.14.1
│   │   │ └── assert-plus@1.0.0
│   │   ├─┬ ecc-jsbn@0.1.2
│   │   │ ├── jsbn@0.1.1 deduped
│   │   │ └── safer-buffer@2.1.2 deduped
│   │   ├─┬ getpass@0.1.7
│   │   │ └── assert-plus@1.0.0
│   │   ├── jsbn@0.1.1
│   │   ├── safer-buffer@2.1.2 deduped
│   │   └── tweetnacl@0.14.5
│   ├── is-typedarray@1.0.0
│   ├── isstream@0.1.2
│   ├── json-stringify-safe@5.0.1 deduped
│   ├─┬ mime-types@2.1.21
│   │ └── mime-db@1.37.0
│   ├── oauth-sign@0.9.0
│   ├── performance-now@2.1.0
│   ├── qs@6.5.2
│   ├── safe-buffer@5.1.2
│   ├─┬ tough-cookie@2.4.3
│   │ ├── psl@1.1.29 deduped
│   │ └── punycode@1.4.1
│   ├─┬ tunnel-agent@0.6.0
│   │ └── safe-buffer@5.1.2 deduped
│   └── uuid@3.3.2
├─┬ paralyze@1.0.0
│ └── setimmediate@1.0.5
├─┬ rabbit.js@0.4.4
│ ├─┬ amqplib@0.3.2
│ │ ├─┬ bitsyntax@0.0.4
│ │ │ └── buffer-more-ints@0.0.2 deduped
│ │ ├── buffer-more-ints@0.0.2
│ │ ├── readable-stream@1.1.14 deduped
│ │ └── when@3.6.4
│ ├── node-uuid@1.4.8
│ └── readable-stream@1.1.14 deduped
├── redis@0.10.3
├─┬ request@2.36.0
│ ├── aws-sign2@0.5.0
│ ├── forever-agent@0.5.2
│ ├─┬ form-data@0.1.4
│ │ ├── async@0.9.2
│ │ ├─┬ combined-stream@0.0.7
│ │ │ └── delayed-stream@0.0.5
│ │ └── mime@1.2.11 deduped
│ ├─┬ hawk@1.0.0
│ │ ├─┬ boom@0.4.2
│ │ │ └── hoek@0.9.1 deduped
│ │ ├─┬ cryptiles@0.2.2
│ │ │ └── boom@0.4.2 deduped
│ │ ├── hoek@0.9.1
│ │ └─┬ sntp@0.2.4
│ │   └── hoek@0.9.1 deduped
│ ├─┬ http-signature@0.10.1
│ │ ├── asn1@0.1.11
│ │ ├── assert-plus@0.1.5
│ │ └── ctype@0.5.3
│ ├── json-stringify-safe@5.0.1
│ ├── mime@1.2.11 deduped
│ ├── node-uuid@1.4.8
│ ├── oauth-sign@0.3.0
│ ├── qs@0.6.6
│ ├─┬ tough-cookie@2.5.0
│ │ ├── psl@1.1.29
│ │ └── punycode@2.1.1
│ └── tunnel-agent@0.4.3
├─┬ stripe@2.6.3
│ └── when@3.1.0
├─┬ stylus@0.45.1
│ ├── css-parse@1.7.0
│ ├── debug@0.7.0 deduped
│ ├─┬ glob@3.2.11
│ │ ├── inherits@2.0.3 deduped
│ │ └─┬ minimatch@0.3.0
│ │   ├── lru-cache@2.7.3
│ │   └── sigmund@1.0.1
│ ├── mkdirp@0.3.5
│ └── sax@0.5.8
└── yarn@0.1.3

npm ERR! missing: @sentry/node@4.4.1, required by backend@0.0.0
npm ERR! missing: @sentry/core@4.4.1, required by @sentry/node@4.4.1
npm ERR! missing: @sentry/hub@4.4.1, required by @sentry/node@4.4.1
npm ERR! missing: @sentry/types@4.4.1, required by @sentry/node@4.4.1
npm ERR! missing: @sentry/utils@4.4.1, required by @sentry/node@4.4.1
npm ERR! missing: @types/stack-trace@0.0.29, required by @sentry/node@4.4.1
npm ERR! missing: @sentry/hub@4.4.1, required by @sentry/core@4.4.1
npm ERR! missing: @sentry/minimal@4.4.1, required by @sentry/core@4.4.1
npm ERR! missing: @sentry/types@4.4.1, required by @sentry/core@4.4.1
npm ERR! missing: @sentry/utils@4.4.1, required by @sentry/core@4.4.1
npm ERR! missing: @sentry/hub@4.4.1, required by @sentry/minimal@4.4.1
npm ERR! missing: @sentry/types@4.4.1, required by @sentry/minimal@4.4.1
npm ERR! missing: @sentry/types@4.4.1, required by @sentry/hub@4.4.1
npm ERR! missing: @sentry/utils@4.4.1, required by @sentry/hub@4.4.1
npm ERR! missing: @sentry/types@4.4.1, required by @sentry/utils@4.4.1
$ ls -al node_modules/@sentry
total 0
drwxr-xr-x    8 holmes  staff   256 Dec 11 17:37 .
drwxr-xr-x  190 holmes  staff  6080 Dec 11 17:37 ..
drwxr-xr-x    6 holmes  staff   192 Dec 11 17:37 core
drwxr-xr-x    6 holmes  staff   192 Dec 11 17:37 hub
drwxr-xr-x    6 holmes  staff   192 Dec 11 17:37 minimal
drwxr-xr-x    6 holmes  staff   192 Dec 11 17:37 node
drwxr-xr-x    6 holmes  staff   192 Dec 11 17:37 types
drwxr-xr-x   38 holmes  staff  1216 Dec 11 17:37 utils
$ ls -al node_modules/@sentry/node
total 24
drwxr-xr-x   6 holmes  staff   192 Dec 11 17:37 .
drwxr-xr-x   8 holmes  staff   256 Dec 11 17:37 ..
-rw-r--r--   1 holmes  staff  1527 Oct 26  1985 LICENSE
-rw-r--r--   1 holmes  staff  1942 Oct 26  1985 README.md
drwxr-xr-x  25 holmes  staff   800 Dec 11 17:37 dist
-rw-r--r--   1 holmes  staff  1631 Dec 11 17:37 package.json
$ cat node_modules/@sentry/node/package.json
{
  "_from": "@sentry/node@4.4.1",
  "_id": "@sentry/node@4.4.1",
  "_inBundle": false,
  "_integrity": "sha512-qPqF9A5GaAKEMFJRfBPGQ9kyZLXGv2iRhJUbc7DyO7F9LWsIqjokclr2F5qyOFVQAhkv/qLjAE1biVFG8/LwUQ==",
  "_location": "/@sentry/node",
  "_phantomChildren": {},
  "_requested": {
    "type": "version",
    "registry": true,
    "raw": "@sentry/node@4.4.1",
    "name": "@sentry/node",
    "escapedName": "@sentry%2fnode",
    "scope": "@sentry",
    "rawSpec": "4.4.1",
    "saveSpec": null,
    "fetchSpec": "4.4.1"
  },
  "_requiredBy": [
    "#USER",
    "/"
  ],
  "_resolved": "https://registry.npmjs.org/@sentry/node/-/node-4.4.1.tgz",
  "_shasum": "20cb65307015c8916ad3b3556694adde94104c74",
  "_shrinkwrap": null,
  "_spec": "@sentry/node@4.4.1",
  "_where": "/Users/holmes/Code/backend",
  "bin": null,
  "bundleDependencies": false,
  "dependencies": {
    "@sentry/core": "4.4.1",
    "@sentry/hub": "4.4.1",
    "@sentry/types": "4.4.1",
    "@sentry/utils": "4.4.1",
    "@types/stack-trace": "0.0.29",
    "cookie": "0.3.1",
    "https-proxy-agent": "^2.2.1",
    "lsmod": "1.0.0",
    "stack-trace": "0.0.10",
    "tslib": "^1.9.3"
  },
  "deprecated": false,
  "devDependencies": {
    "@types/cookie": "0.3.1",
    "@types/node": "^10.12.10",
    "express": "^4.16.4",
    "jest": "^22.4.3",
    "npm-run-all": "^4.1.2",
    "prettier": "^1.14.0",
    "prettier-check": "^2.0.0",
    "rimraf": "^2.6.2",
    "tslint": "^5.11.0",
    "typescript": "^3.0.1"
  },
  "engines": {
    "node": ">=6"
  },
  "name": "@sentry/node",
  "optionalDependencies": {},
  "peerDependencies": {},
  "version": "4.4.1"
}

Как вы можете видеть, в окончательном package.json нет строки "main": "dist/index.js",.Что может быть причиной такой проблемы?Я установил @ sentry / node в других проектах, но по какой-то причине он не работает согласованно в этом старом проекте.

1 Ответ

0 голосов
/ 13 декабря 2018

Кажется, что моя проблема была связана с неправильной установкой npm / node.Я не уверен, что именно проблема была с этим, но чтобы исправить это, я сделал следующее:

  1. Установить nvm.
  2. Установленный узел / npm от nvm.
  3. Удален мой каталог node_modules.
  4. На всякий случай, я chmod -R myuser ~/.npm

Эти шаги решили проблему для меня.Что касается вопроса, я не уверен.Это может быть связано с конфликтами с системным узлом и n (который я использовал вместо nvm).

...