我有这样的工作区
"private": true,
"workspaces": {
"packages": [
"packages/*"
],
"nohoist": [
"**/firebase-admin",
"**/firebase-admin/**",
"**/firebase-functions",
"**/firebase-functions/**"
]
},
在我的软件包目录中,我有一个文件夹common
,以及它自己的package.json
等。
当我执行yarn workspaces run build
时,它将触发所有工作空间的构建脚本。但是,如果我尝试使用yarn workspace
之类的yarn workspace common build
命令来定位一个特定的工作区,则会不断出现错误:
错误未知工作空间为“公用”。
这是我来自yarn workspaces info
的输出:
yarn workspaces v1.17.0
{
"@gemini/cli": {
"location": "packages/cli",
"workspaceDependencies": [],
"mismatchedWorkspaceDependencies": []
},
"@gemini/cloud-functions": {
"location": "packages/cloud-functions",
"workspaceDependencies": [
"@gemini/common"
],
"mismatchedWorkspaceDependencies": []
},
"@gemini/common": {
"location": "packages/common",
"workspaceDependencies": [],
"mismatchedWorkspaceDependencies": []
},
"@gemini/tools": {
"location": "packages/tools",
"workspaceDependencies": [],
"mismatchedWorkspaceDependencies": []
}
}
我尝试将名称更改为package / common或@ gemini / common,但是没有运气。
我在这里想念什么?
答案 0 :(得分:0)
当您要在特定工作空间上调用命令时,应使用在其package.json文件“名称”中设置的软件包名称。您的情况应该是:
yarn workspace @gemini/common build
我尝试将名称更改为package / common或@ gemini / common,但没有运气。
您应该不会看到错误error Unknown workspace "@gemini/common".
,也许您会遇到其他错误?
答案 1 :(得分:0)
如果您想在工作区build
中运行<workspace>
脚本,则该命令的语法为
yarn workspace <workspace> build
例如,我的根package.json
中包含以下内容:
"workspaces": [
"api",
"app"
],
这样我就可以运行yarn workspace api build
。