4

我的包树:

LICENSE
README.md
main.js
package.json
- node_modules
   - m
      foo.wasm
      package.json

我想包含私有模块,而不是发布到 npmjs npm pack。这是我的:node_modules/m.npmignore

**/*

!main.js
!node_modules/m/package.json
!node_modules/m/foo.wasm

我的.gitignore

node_modules

npm pack不遵循它,只打包前四个文件。

npm notice === Tarball Contents ===
npm notice 35.1kB LICENSE
npm notice 104B   README.md
npm notice 12.6kB main.js
npm notice 1.2kB  package.json

来自https://docs.npmjs.com/cli/v7/using-npm/developers#keeping-files-out-of-your-packagenpm.npmignore首先使用。我的问题是为什么npm pack不遵循它?我的使用有错误吗?

谢谢。

4

1 回答 1

0

您的 npmjs 链接中,据说

此外,node_modules 中的所有内容都将被忽略,捆绑的依赖项除外。npm 会自动为您处理此问题,因此不必费心将 node_modules 添加到 .npmignore。

因此,如果您在 package.json 文件中添加“ m 模块”作为bundleddependencies,npm pack 将添加到包中。

但是,很自然,它也会将你的“ m 模块”的依赖项添加到包文件中。硬界依赖需要所有硬包含的依赖。

于 2021-06-09T06:50:54.173 回答