不知怎的,我已经把我以前工作过的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"
}
}
答案 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应用程序时,请考虑使用以下步骤。
在您较旧的余烬应用之外
$ cd ~
$ npm install -g ember-cli
检查您的ember-cli版本(项目文件夹之外)。
$ cd ~
$ ember -v
您应该会看到最新版本。
查看bower.json
和package.json
中的包。 (例如,如果您有一个项目文件夹,并且您有一个临时文件夹用于短期内容。)您可以在应用程序名称中使用版本号,以便稍后查看。
$ cd ~/projects/temp
$ ember new my-v24-app
这个虚拟应用程序始终是检查兼容版本的良好基石。
检查您的bower.json
和package.json
对齐旧项目中的版本号以匹配新的默认值。 (更新ember-cli,ember,ember-data等)现在是时候仔细检查你的其他软件包,比如sass或firebase等等。也许还有一个与新Ember兼容的更新版本。< / p>
bower_components
和node_modules
在大多数情况下,当您遇到某些程序包冲突时,主要原因是程序包/模块文件夹中包含较旧版本和较新版本的程序包。是的,有npm prune
和bower prune
等命令清理包文件夹。
但是,如果您只是删除这些文件夹并重新安装所有软件包,那么这是最安全的解决方案。
$ cd my-updated-project
$ rm -rf bower_components node_modules
$ npm install && bower install
祝你好运! :)