cal*_*lum 20
问题是我files在package.json中有一个数组.如果存在,则只发布指定的文件,其他所有文件都是有效的npmignored.
https://docs.npmjs.com/files/package.json
lig*_*lbs 13
对于任何人不受上述答案,固定NPM包和发布方面的任何文件的package.json你在目录树中,而不是仅仅在根.
在我的情况下,我有一个模块,用ejs模板化另一个模块,但因为npm将子package.json视为真实,它正在files从那里读取而不是捆绑我需要的一切.
files在任何package.json中查找,而不仅仅是你的root.
小智 11
我在package.json中也有(filesaly)的"files"属性,但是使用相对路径到以点斜杠("./")开头的文件和目录列表,但是既没有npm pack也没有npm publish用过.删除这些,都按预期工作!
所以改变:
"files": [ "./bin", "./lib" ]
Run Code Online (Sandbox Code Playgroud)
至:
"files": [ "bin", "lib" ]
Run Code Online (Sandbox Code Playgroud)
并运行:
$ npm pack
Run Code Online (Sandbox Code Playgroud)
检查gnu zipped tarfile和finaly:
$ npm publish <projectname>-<semver>.tgz
Run Code Online (Sandbox Code Playgroud)
对我来说,将 .gitignore 文件和其中列出的文件放在要发布的包文件夹中是导致问题的原因。
一般来说,
"All files in the package directory are included if no local .gitignore or
.npmignore file exists. If both files exist and a file is ignored by .gitignore
but not by .npmignore then it will be included."
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5333 次 |
| 最近记录: |