来自 github 的 npm 包,缺少文件
Posted
技术标签:
【中文标题】来自 github 的 npm 包,缺少文件【英文标题】:npm package from github, missing files 【发布时间】:2016-07-27 10:54:04 【问题描述】:我正在尝试从我的一个项目中引用logary-js(免责声明:我自己的项目)。
我有这个 packages.json 文件:
...
"dependencies":
"logary": "logary/logary-js#master",
...
...
但是,当尝试拉下包时,它会失败并出现以下错误:
✗ npm install
> logary@1.0.0 preinstall /Users/h/dev/proj/node_modules/.staging/logary-6603d70a
> npm run build
> logary@1.0.0 build /Users/h/dev/proj/node_modules/.staging/logary-6603d70a
> NODE_ENV=production webpack --progress --color --display-error-details --display-reasons --optimize-minimize
webpack 1.12.14
Usage: https://webpack.github.io/docs/cli.html
Options:
--help, -h, -?
--config
--context
--entry
--module-bind
--module-bind-post
--module-bind-pre
--output-path
--output-file
--output-chunk-file
--output-named-chunk-file
--output-source-map-file
--output-public-path
--output-jsonp-function
--output-pathinfo
--output-library
--output-library-target
--records-input-path
--records-output-path
--records-path
--define
--target
--cache [default: true]
--watch, -w
--watch which closes when stdin ends
--watch-aggregate-timeout
--watch-poll
--hot
--debug
--devtool
--progress
--resolve-alias
--resolve-loader-alias
--optimize-max-chunks
--optimize-min-chunk-size
--optimize-minimize
--optimize-occurence-order
--optimize-dedupe
--prefetch
--provide
--labeled-modules
--plugin
--bail
--profile
-d shortcut for --debug --devtool sourcemap --output-pathinfo
-p shortcut for --optimize-minimize
--json, -j
--colors, -c
--sort-modules-by
--sort-chunks-by
--sort-assets-by
--hide-modules
--display-exclude
--display-modules
--display-chunks
--display-error-details
--display-origins
--display-cached
--display-cached-assets
--display-reasons, --verbose, -v
Output filename not configured.
npm ERR! Darwin 14.5.0
npm ERR! argv "/Users/h/.nvm/versions/node/v5.6.0/bin/node" "/Users/h/.nvm/versions/node/v5.6.0/bin/npm" "run" "build"
npm ERR! node v5.6.0
npm ERR! npm v3.6.0
npm ERR! code ELIFECYCLE
npm ERR! logary@1.0.0 build: `NODE_ENV=production webpack --progress --color --display-error-details --display-reasons --optimize-minimize`
npm ERR! Exit status 255
npm ERR!
npm ERR! Failed at the logary@1.0.0 build script 'NODE_ENV=production webpack --progress --color --display-error-details --display-reasons --optimize-minimize'.
如果目录中没有 webpack.config.js 文件,您会遇到什么错误。这让我相信 npm 只是拉下几个文件。 npm-debug.log 说:
89 verbose tar unpack /Users/h/.npm/logary/1.0.0/package.tgz
90 verbose tar unpacking to /Users/h/dev/proj/node_modules/.staging/logary-6603d70a
91 silly gentlyRm /Users/h/dev/proj/node_modules/.staging/logary-6603d70a is being purged
92 verbose gentlyRm don't care about contents; nuking /Users/h/dev/proj/node_modules/.staging/logary
-6603d70a
93 silly gunzTarPerm modes [ '770', '660' ]
94 silly gunzTarPerm extractEntry package.json
95 silly gunzTarPerm extractEntry README.md
96 silly gunzTarPerm extractEntry LICENSE
97 silly gentlyRm /Users/h/dev/proj/node_modules/.staging/logary-6603d70a/node_modules is being purg
ed
98 verbose gentlyRm don't care about contents; nuking /Users/h/dev/proj/node_modules/.staging/logary
-6603d70a/node_modules
99 silly doParallel preinstall 1
100 silly preinstall logary@1.0.0 /Users/h/dev/proj/node_modules/.staging/logary-6603d70a
101 info lifecycle logary@1.0.0~preinstall: logary@1.0.0
另外,在这个例子中 https://github.com/logary/logary-js/tree/master/examples/webpack 它引用日志就好了,尽管是通过文件系统而不是 github。
所以问题变成了;如何从 github 引用日志?或者我应该在其package.json 文件中更改什么以使其正常工作?
【问题讨论】:
您没有在 npm 中使用该版本是否有原因? 是的,它是我自己的库,我想在我自己的软件中保持它的前沿。 【参考方案1】:您可以使用语法 npm install --save https://github.com/USER/REPO/tarball/BRANCH
从 GitHub 安装 Node 包。您也可以查看此answer,它对此有很好的提示。
【讨论】:
以上是关于来自 github 的 npm 包,缺少文件的主要内容,如果未能解决你的问题,请参考以下文章
无法从 Heroku 上的 package.json 从 github 安装 npm 包