将 ember 插件发布到本地 NPM 注册表以供开发人员构建?

Publish ember addon to local NPM registry for developer builds?

我如何支持这些 NPM/ember 插件场景?

Maven

NPM

我们可以将 DependsOnMe 与相对路径一起使用,但这需要我们设置某种规则,其中构建在本地以一种方式工作,而在构建机器上以另一种方式工作。

虽然可能,但我希望有更优雅的解决方案来实现这一目标。

我可以让开发人员生成进入本地 npm 缓存的包供以后使用吗?如果可以,你能指点我那个文档吗?

相关

因为我们使用 maven 前端插件来管理 npm 和 ember 我们可以封装一个额外的 npm 模块(在本例中是一个 ember 插件)作为 maven 工件并利用 maven 依赖我们各种场景的管理

Ember 附加模块

  • 添加 'npm pack' 以在 npm 存储库中生成本地包(在我们的例子中 root/target/tmp/.npm//)
  • 添加程序集以生成包含 tar 文件的 tar.gz(有点傻)并将其作为工件附加到模块(类型:tar.gz,分类器:ember -插件)

客户端模块

  • 添加 maven-dependency-plugin unpack 解包插件模块的 tar.gz 分类器:ember-addon 到 target/ember-addons 之前 npm 执行此模块
  • 修改 package.json 以使用本地依赖项 "our-addon" : "file:../../target/ember-addons///package.tgz"

如果用户构建 ember 和客户端,则插件模块构建将工件放置在本地 Maven 存储库中。客户端模块从本地存储库解压并通过 npm ember 构建过程拉入 node_modules。

如果用户只构建客户端,那么客户端模块会在解压和使用阶段之前从我们的 nexus 存储库中获取插件工件。