我有一个在"main": "dist/index.js"
中有package.json
的节点模块。
从父文件夹调用node my-package
成功调用dist/index.js
作为条目文件。
但是,如果我打电话给npm link
,它似乎在进度条上进行了某种操作(也许是出于某种原因在安装某些东西),然后它说:
npm ERR! enoent ENOENT: no such file or directory, chmod '/Users/Man/.nvm/versions/node/v8.11.3/lib/node_modules/my-package/index.js'
为什么npm链接无法识别其他条目文件?它正在寻找index.js。
PS我的目标是使我的模块可从任何目录在命令行中使用。不知道我是否会按照正确的方式进行操作。
答案 0 :(得分:1)
尝试
"main": "./dist/index.js",
在package.json
中。 npm link
对我有用。
还可以先运行npm list --link=true
和npm list -g --link=true --depth=0
和unlink
模块(如果已链接)。有时,如果您的npm cache clean
搞砸了,运行link
会有所帮助。
答案 1 :(得分:0)
证明我的package.json文件具有"bin": "./index.js"
。这引起了问题,将其删除即可解决。