开源CLI工具上架Microsoft Store的签名及发布流程咨询
开源CLI工具上架Microsoft Store:签名与流程经验分享
我之前刚好帮朋友处理过类似的开源CLI工具提交到Microsoft Store的需求,结合踩过的坑和官方要求,给你分享一些实用经验:
一、先明确:自签名证书过不了审核
微软商店对应用的签名要求很严格,自签名的jar绝对会被拒审——因为商店需要确保用户下载的应用来自可信的发布者,自签名证书不在微软的信任链里,根本通不过审核环节。
如果不想掏钱买付费代码签名证书,其实有免费的替代方案:比如Sigstore的Fulcio服务,它提供免费的、受微软信任的代码签名证书,不少开源开发者已经用它成功提交过应用了,只是这个签名流程需要你花点时间熟悉下。
二、别直接提交jar或bat,必须打包成标准格式
直接上传jar或bat文件到商店是行不通的,微软更认可MSIX/Appx这类现代应用包格式,推荐你这么处理:
- 把jar打包成exe/MSIX:用JDK自带的
jpackage工具就行,它能把Java应用打包成Windows可执行文件,还能直接生成符合商店要求的MSIX包,一步到位。 - 替换bat脚本:bat脚本本身很难通过审核,建议把bat里的逻辑整合到你的Java代码里,或者转成PowerShell后再打包成可执行文件,避免直接提交脚本类文件。
三、提交到商店的完整流程
- 注册开发者账号:先去Microsoft Partner Center注册个人开发者账号,费用不高;如果你的开源项目符合条件,还能申请免费的开发者账号(微软有针对开源项目的扶持政策)。
- 打包并签名应用:用
jpackage生成MSIX包后,用可信的代码签名证书(不管是付费的还是Sigstore的免费证书)对整个包进行签名,注意是签包不是单个文件。 - 提交审核:在Partner Center创建你的应用条目,上传签名后的包,填好应用描述、分类、截图这些信息,然后提交审核。
- 等待审核结果:只要包的签名没问题、内容符合商店政策,一般1-3天就能通过,之后你的CLI工具就能在商店上架了。
四、开源项目的额外提醒
- 你的开源许可证要符合微软要求,像MIT、Apache这类常见许可证都没问题,记得在应用描述里明确标注许可证信息。
- 如果你的CLI需要管理员权限或者特殊系统权限,一定要在提交时说明用途,尽量只申请必要的权限,不然容易被审核打回。
我当时帮朋友处理的就是一个Java写的开源CLI,用jpackage打包成MSIX,用Sigstore的免费证书签名,顺利过审了,没遇到太大障碍。核心就是别直接提交原始文件,一定要走标准打包流程。
内容的提问来源于stack exchange,提问作者rekire




