余烬错误"指定2.3.0已安装2.4.3" on" ember s"

时间:2016-03-18 11:05:26

标签: ember.js bower

不知怎的,我已经把我以前工作过的ember.js环境搞得一团糟。

当我尝试启动服务器时,我得到了:

glaucon@polo ~/dev/ember-django-testbed $ ember s

Missing bower packages:
Package: ember
  * Specified: 2.3.0
  * Installed: 2.4.3

Run `bower install` to install missing dependencies.

如果我这样做,那么就运行bower install我得到这个

glaucon@polo ~/dev/ember-django-testbed $ bower install ember --save-dev
bower ember#*                   cached git://github.com/components/ember.git#2.4.3
bower ember#*                 validate 2.4.3 against git://github.com/components/ember.git#*
bower ember#>=1.4               cached git://github.com/components/ember.git#2.4.3
bower ember#>=1.4             validate 2.4.3 against git://github.com/components/ember.git#>=1.4

但是在我这样做之后,当我尝试ember s时,我仍然留下上一条错误消息

然后我(根据Running "ember server" fails with error)尝试了这个

$ bower cache clean

接下来是:

$ bower install ember --save-dev

但仍然是同样的错误信息:

为了确保我遵循https://stackoverflow.com/a/31167757/364088的建议并执行了以下操作:

$ rm -rf bower_components
$ bower cache clean
$ bower install

并且..仍然是相同的错误消息!

修改

忘了把这一点放进去。这是bower.json

glaucon@polo ~/dev/ember-django-testbed $ cat bower.json
{
  "name": "ember-django-testbed",
  "dependencies": {
    "ember": "2.3.0",
    "ember-cli-shims": "0.1.0",
    "ember-cli-test-loader": "0.2.2",
    "ember-load-initializers": "0.1.7",
    "ember-qunit-notifications": "0.1.0",
    "jquery": "1.11.3",
    "loader.js": "^3.5.0"
  },
  "resolutions": {
    "ember": "^2.4.3"
  },
  "devDependencies": {
    "ember": "^2.4.3"
  }
}

3 个答案:

答案 0 :(得分:2)

编辑bower.json dependencies中的行
"ember": "2.3.0"

"ember": "^2.4.3"

答案 1 :(得分:1)

在bower.json中,更改:

"ember": "2.3.0"

要:

"ember": "^2.4.3"

之后删除bower组件map并运行:

bower install

答案 2 :(得分:1)

来源:How to update your Ember.js project?

升级Ember应用程序时,请考虑使用以下步骤。

升级ember-cli

在您较旧的余烬应用之外

$ cd ~
$ npm install -g ember-cli

检查您的ember-cli版本(项目文件夹之外)。

$ cd ~
$ ember -v

您应该会看到最新版本。

创建一个全新的余烬应用程序

查看bower.jsonpackage.json中的包。 (例如,如果您有一个项目文件夹,并且您有一个临时文件夹用于短期内容。)您可以在应用程序名称中使用版本号,以便稍后查看。

$ cd ~/projects/temp
$ ember new my-v24-app

这个虚拟应用程序始终是检查兼容版本的良好基石。

升级旧项目中的版本号以与新的虚拟应用程序匹配。

检查您的bower.jsonpackage.json对齐旧项目中的版本号以匹配新的默认值。 (更新ember-cli,ember,ember-data等)现在是时候仔细检查你的其他软件包,比如sass或firebase等等。也许还有一个与新Ember兼容的更新版本。< / p>

删除bower_componentsnode_modules

在大多数情况下,当您遇到某些程序包冲突时,主要原因是程序包/模块文件夹中包含较旧版本和较新版本的程序包。是的,有npm prunebower prune等命令清理包文件夹。

但是,如果您只是删除这些文件夹并重新安装所有软件包,那么这是最安全的解决方案。

$ cd my-updated-project
$ rm -rf bower_components node_modules
$ npm install && bower install
祝你好运! :)