Peer dependency 也是链接 npm 模块的 dev dependency 作为一个单独的实例
Peer dependency that is also dev dependency of linked npm module is acting as a separate instance
在我的应用程序中,我有这些依赖项:
typeorm-linq-repository 作为本地安装 ("typeorm-linq-repository": "file:../../../IRCraziestTaxi/typeorm-linq-repository"
),具有 TypeORM
的开发依赖性和对等依赖性
我使用 "file:"
安装 typeorm-linq-repository 的原因是我是开发人员并在将发布推送到 npm 之前测试此应用程序中的更改。
我之前用的是node ~6.10 (npm ~4),所以我用"file:"
安装的时候,只是把发布的文件复制过来,这就是我想要的。
但是,在升级到节点 8.11.3 (npm 5.6.0) 后,它现在链接文件夹而不是复制已发布的文件。
请注意,如果重要的话,我的环境是 Windows。
问题是这样的:由于我的应用程序和链接的 typeorm-linq-repository 在它们自己的 node_modules 文件夹中都有 TypeORM,因此 TypeORM 被视为模块的单独 "instance"每个应用程序。
因此,在主应用中创建连接后,当到达typeorm-linq-repository中访问连接的代码时,会抛出Connection "default" was not found.
.
的错误
我一直在孜孜不倦地寻找解决方案。我已经试过了--preserve-symlinks
,但是那不行。
我现在完成这项工作的唯一方法是在我的应用程序 node_modules 中手动创建文件夹并复制适用的文件,这是一个巨大的痛苦。
如何告诉 npm 不要对 "file:"
安装进行符号链接或让它使用 TypeORM 模块的相同实例?
虽然我觉得它有点像创可贴,但我让它工作起来很容易。我会 post 在这里回答以帮助其他可能遇到此问题的人,但如果有人有更合适的解决方案,请随时回答,我会接受。
诀窍是 link 我的应用程序将 TypeORM 安装到我的其他 linked 依赖项的 node_modules 文件夹中的 TypeORM 文件夹。
...,
"typeorm": "file:../../../IRCraziestTaxi/typeorm-linq-repository/node_modules/typeorm",
"typeorm-linq-repository": "file:../../../IRCraziestTaxi/typeorm-linq-repository",
...
在我的应用程序中,我有这些依赖项:
typeorm-linq-repository 作为本地安装 ("typeorm-linq-repository": "file:../../../IRCraziestTaxi/typeorm-linq-repository"
),具有 TypeORM
我使用 "file:"
安装 typeorm-linq-repository 的原因是我是开发人员并在将发布推送到 npm 之前测试此应用程序中的更改。
我之前用的是node ~6.10 (npm ~4),所以我用"file:"
安装的时候,只是把发布的文件复制过来,这就是我想要的。
但是,在升级到节点 8.11.3 (npm 5.6.0) 后,它现在链接文件夹而不是复制已发布的文件。
请注意,如果重要的话,我的环境是 Windows。
问题是这样的:由于我的应用程序和链接的 typeorm-linq-repository 在它们自己的 node_modules 文件夹中都有 TypeORM,因此 TypeORM 被视为模块的单独 "instance"每个应用程序。
因此,在主应用中创建连接后,当到达typeorm-linq-repository中访问连接的代码时,会抛出Connection "default" was not found.
.
我一直在孜孜不倦地寻找解决方案。我已经试过了--preserve-symlinks
,但是那不行。
我现在完成这项工作的唯一方法是在我的应用程序 node_modules 中手动创建文件夹并复制适用的文件,这是一个巨大的痛苦。
如何告诉 npm 不要对 "file:"
安装进行符号链接或让它使用 TypeORM 模块的相同实例?
虽然我觉得它有点像创可贴,但我让它工作起来很容易。我会 post 在这里回答以帮助其他可能遇到此问题的人,但如果有人有更合适的解决方案,请随时回答,我会接受。
诀窍是 link 我的应用程序将 TypeORM 安装到我的其他 linked 依赖项的 node_modules 文件夹中的 TypeORM 文件夹。
...,
"typeorm": "file:../../../IRCraziestTaxi/typeorm-linq-repository/node_modules/typeorm",
"typeorm-linq-repository": "file:../../../IRCraziestTaxi/typeorm-linq-repository",
...