发布到Verdaccio的TypeScript npm包安装后缺失lib文件夹问题
可能的原因及解决方法
1. package.json未配置files字段
npm 默认仅发布根目录下的package.json、README、LICENSE等默认文件,编译生成的lib文件夹不会自动纳入发布包。需在package.json中显式声明要发布的文件/目录:
{ "files": [ "lib" ] }
2. .npmignore文件误排除lib文件夹
检查.npmignore文件,若存在lib/这类规则,会导致发布时跳过整个lib目录。删除该规则,确保lib不在忽略列表内。
3. TypeScript编译配置或执行问题
- 确认
tsconfig.json的outDir配置指向lib:{ "compilerOptions": { "outDir": "./lib" } } - 发布前必须执行
tsc完成编译,确保lib文件夹生成在项目根目录,且包含完整的编译产物。
4. 发布命令执行目录错误
确保在包含package.json和lib文件夹的项目根目录执行npm publish --registry http://localhost:4873/,避免因目录层级错误导致发布的包缺失文件。
内容的提问来源于stack exchange,提问作者Simple Fellow
相关产品推荐
相关产品推荐

