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