如何发布带分发文件的npm包?
我想发布一个包含我的源代码和分发文件的npm包。 我的Github存储库包含src
文件夹,其中包含JavaScript源文件。 构build过程将生成包含分发文件的dist
文件夹。 当然, dist
文件夹没有被检入到Github仓库中。
我如何发布一个npm包,当有人做npm install
,他们会得到src
以及dist
文件夹? 目前,当我从我的git仓库运行npm publish
时,只会导致发布src
文件夹。
我的package.json看起来像这样:
{ "name": "join-js", "version": "0.0.1", "homepage": "https://github.com/archfirst/joinjs", "repository": { "type": "git", "url": "https://github.com/archfirst/joinjs.git" }, "main": "dist/index.js", "scripts": { "test": "gulp", "build": "gulp build", "prepublish": "npm run build" }, "dependencies": { ... }, "devDependencies": { ... } }
看看package.json文件的“files”字段https://docs.npmjs.com/files/package.json
从文档:
“文件”字段是要包含在项目中的文件数组。 如果您在数组中命名一个文件夹,那么它也将包含该文件夹内的文件。 (除非他们会被其他规则忽略)
当您npm publish
,如果您没有.npmignore
文件,npm将使用您的.gitignore
文件(在您的情况下,您排除了dist
文件夹)。
要解决您的问题,请根据.gitignore
文件创build.npmignore
文件, 而不要忽略dist文件夹 。
Soure: https : //docs.npmjs.com/misc/developers#keeping-files-out-of-your-package