我有一个关于Ember Addon的git repo:
它通过了所有单元测试。它已作为ui-responsive-toolbelt发布到npm。我使用了 npm ' s"链接"本地测试这个"插件" (在Ember的说法中)当作为依赖项包含在package.json
文件中时,在使用应用程序时工作正常。
令人惊讶的是,我完全对此感到不安,当 npm 将此依赖项安装到Ember项目目录中时,它会带来绝大多数文件而不会抱怨。从NPM的角度来看,它似乎是一个干净的安装。不幸的是,插件很大程度上取决于它的入口点"这是repo根目录中的index.js
。我已经非常清楚地将这个文件包含在回购中,但出于某种原因,它并没有结束!
我在两台计算机和三个Ember项目上尝试了这一点,并且都有相同的结果。请帮忙!
当我尝试使用ember serve
启动服务器时,我从Ember-CLI收到的错误消息是:
包
ui-responsive-toolbelt
不是格式正确的包,我们使用了回退查找来解析/path/to/project/node_modules/ui-responsive-toolbelt
。这通常是由没有main
入口点(或index.js
)的插件引起的。
此消息重复两次,然后我得到:
ui-responsive-toolbelt
无法找到/path/to/project/node_modules/ui-list/node_modules/ui-responsive-toolbelt
插件。
答案 0 :(得分:1)
npm install ui-responsive-toolbelt
未下载索引文件所以问题是npm publish
无法正常工作。有一个错误填充。 https://github.com/npm/npm/issues/5082
您可以做的是使用最近的npm版本(或使用旧版本)再次发布您的插件,直到您看到索引文件也被添加为止。