You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Melos中排除packages/**/example文件夹?Monorepo场景求助

解决Melos重复识别包的问题

当然可以排除packages/**/example/目录,只需要修改melos.yaml里的packages配置,添加否定匹配规则即可,具体操作如下:

修改后的melos.yaml配置

name: <my_mono_repo>

packages:
  - examples/**
  - packages/**
  - '!packages/**/example' # 排除所有packages下的example目录

scripts:
 # ...

原理说明

  1. 原配置中packages/**会扫描到packages/foo/example这个软链接目录,而examples/**已经扫描了examples/foo,导致Melos识别出两个同名的foo_example包,触发报错。
  2. 添加'!packages/**/example'后,Melos会跳过所有packages子目录下的example文件夹,避免重复扫描同一个包。
  3. 同时,packages/foo/example的软链接依然能满足pub.dev的要求——pub.dev会读取packages/foo下的example目录内容,不管它是不是软链接,所以演示应用的展示不受影响。

验证配置

修改完成后,执行以下命令确认配置生效:

melos list

输出中应该只会出现一次foo_example(来自examples/foo),不会再出现重复条目。

内容的提问来源于stack exchange,提问作者user9836706

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 07:45:33