Node.js lerna导入始终返回EDESTDIR

Node.js lerna导入始终返回EDESTDIR,node.js,yarnpkg,lerna,Node.js,Yarnpkg,Lerna,我有一个预先存在的项目,我想导入到我现有的lerna monorepo中,该项目使用Thread工作区 命令: 我已尝试运行以下所有命令。错误仍然顽固地保持不变。另外,petstore有一个package.json文件,是一个git repo 错误: 另外,lerna import../petstore会导致创建一个packages/**/petstore,这不是预期的结果 我希望这包括所有相关的代码。我们在packages/shared下有支持包,在packages/api下有api lern

我有一个预先存在的项目,我想导入到我现有的lerna monorepo中,该项目使用Thread工作区

命令: 我已尝试运行以下所有命令。错误仍然顽固地保持不变。另外,petstore有一个package.json文件,是一个git repo

错误: 另外,
lerna import../petstore
会导致创建一个
packages/**/petstore
,这不是预期的结果

我希望这包括所有相关的代码。我们在
packages/shared
下有支持包,在
packages/api
下有api

lerna.json package.json 我看过的资源:
  • 但是它没有关于这个错误的任何信息


Lerna从package.json上的键
工作区读取包,而不是从Lerna.json上的
包读取包

lerna使用
/*
读取所有值,并将其视为包目录。它逐字解释
**
,不将其解析为通配符并展开

解决方案是从
lerna.json
中删除

{
  "npmClient": "yarn",
  "useWorkspaces": true,
  "private": true,
  "version": "0.0.1",
  "lerna": "2.11.0"
}
并更新工作空间路径,以明确引用包中的任何子目录(如果monorepo的结构是这样的):

{
  "name": "root",
  "devDependencies": {
    "lerna": "^2.11.0"
  },
  "workspaces": [
    "packages/a/*",
    "packages/api/*"
  ],
}
要将
pet商店
项目从monorepo外部的目录导入monorepo中的
packages/api
,请执行以下操作:

lerna import ../pet-store --dest="./packages/api/"
{
  "name": "root",
  "devDependencies": {
    "lerna": "^2.11.0"
  },
  "workspaces": [
    "packages/**/*"
  ],
}
{
  "npmClient": "yarn",
  "useWorkspaces": true,
  "private": true,
  "version": "0.0.1",
  "lerna": "2.11.0"
}
{
  "name": "root",
  "devDependencies": {
    "lerna": "^2.11.0"
  },
  "workspaces": [
    "packages/a/*",
    "packages/api/*"
  ],
}
lerna import ../pet-store --dest="./packages/api/"