我已经成功地为我们的私有 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
子目录(奇怪的是,这是有效的并且忽略了其他目录,它只是从不安装和子目录。)files
package.json
src
test
将入口点移动到src/
子目录会导致它根本无法安装,并出现以下错误:
ENOENT: no such file or directory, chmod '...node_modules/@private_registry/app_name/src/cli.js
我认为发布没有问题,因为我可以拉下 tarball 并提取src
和test
子目录。