我已经成功地为我们的私有 Verdaccio 实例创建了一个已发布的 NPM 包。从我们的私有 NPM 注册表进行全局安装后,我们缺少src/和test/子目录。
.npmignore或文件中没有引用任何内容.gitignore,我们甚至明确引用了src/文件块中的子目录package.json:
包 JSON
{
...
"main": "./bin/cli.js",
"bin": {
"app_name": "./bin/cli.js"
},
"scripts": {
"start": "node ./bin/cli.js"
},
"files": [
"bin",
"test",
"src",
"package.json"
],
...
}
我尝试了以下解决方法,但没有运气:
- 移动
cli.js到src子目录。 - 在块中显式列出
src和test子目录(奇怪的是,这是有效的并且忽略了其他目录,它只是从不安装和子目录。)filespackage.jsonsrctest
将入口点移动到src/子目录会导致它根本无法安装,并出现以下错误:
ENOENT: no such file or directory, chmod '...node_modules/@private_registry/app_name/src/cli.js
我认为发布没有问题,因为我可以拉下 tarball 并提取src和test子目录。