任何人都可以帮助我进行Ember更新。我当前的代码库是2.14.2,而我尝试更新2.18.2。我收到以下错误消息。
Could not start watchman
Visit https://ember-cli.com/user-guide/#watchman for more info.
Cannot find module
'/sampleApp/bower_components/ember/ember-template-compiler.js'
任何人,请以此为指导。如果您还有其他方法可以升级余烬版本,请通知我或帮助解决该问题。
更新
完整堆栈跟踪:
日志文件源
`ENV摘要:
错误摘要:
- broccoliBuilderErrorStack: [undefined]
- code: MODULE_NOT_FOUND
- codeFrame: [undefined]
- errorMessage: Cannot find module
'/Users/mariselvan/Documents/sampleApp/bower_components/ember/ember-
template-compiler.js'
- errorType: [undefined]
- location:
- column: [undefined]
- file: [undefined]
- line: [undefined]
- message: Cannot find module
'/Users/mariselvan/Documents/sampleApp/bower_components/ember/ember-
template-compiler.js'
- name: Error
- nodeAnnotation: [undefined]
- nodeName: [undefined]
- originalErrorMessage: [undefined]
- stack: Error: Cannot find module
'/Users/mariselvan/Documents/sampleApp/bower_components/ember/ember-
template-compiler.js'
at Function.Module._resolveFilename
(internal/modules/cjs/loader.js:580:15)
at Function.Module._load (internal/modules/cjs/loader.js:506:25)
at Module.require (internal/modules/cjs/loader.js:636:17)
at require (internal/modules/cjs/helpers.js:20:18)
at Class.htmlbarsOptions (/Users/mariselvan/Documents/sampleApp/node_modules/ember-inplace-edit/node_modules/ember-cli-htmlbars/ember-addon-main.js:78:25)
at Object.toTree (/Users/mariselvan/Documents/sampleApp/node_modules/ember-inplace-edit/node_modules/ember-cli-htmlbars/ember-addon-main.js:31:36)
at /Users/mariselvan/Documents/sampleApp/node_modules/ember-cli-preprocess-registry/preprocessors.js:180:26
at Array.forEach (<anonymous>)
at processPlugins (/Users/mariselvan/Documents/sampleApp/node_modules/ember-cli-preprocess-registry/preprocessors.js:178:11)
at module.exports.preprocessTemplates (/Users/mariselvan/Documents/sampleApp/node_modules/ember-cli-preprocess-registry/preprocessors.js:161:10)
=================================================================================
项目的Ember-Cli版本:
ember-cli: 2.14.2
node: 10.13.0
os: darwin x64
谢谢。
答案 0 :(得分:1)
我记得在余烬2.x后期经历过类似的事情。基本上,余烬在大约2.11左右从凉亭切换到npm。
您是否正在使用ember-source
的{{1}} npm版本?您的模板编译器查找是在ember
内搜索,如果您正确地切换到了应该拥有的bower
,则很可能是错误的!
此issue已修复,可能是您的原因。通常,更新余烬
仅版本是不够的。对我来说,更新到ember-cli版本总是最容易的,该版本的蓝图安装了您想要的npm
版本(这将帮助您了解需要更新哪些其他核心依赖项)。在这里浏览旧版本说明会有所帮助。
如果您使用的是旧的ember-cli-htmlbars-inline-precompiler,则需要升级到:
ember
如果不是上述任何一种,请使用完整的堆栈跟踪和 "ember-cli-htmlbars-inline-precompile": "^0.3.6"
版本更新您的问题
编辑:我想帮助您将来自己解决此问题,因此,这是我得出结论的详细方式。在您的堆栈跟踪中,我们看到:
ember-cli
这是在/Users/mariselvan/Documents/sampleApp/bower_components/ember/ember-
template-compiler.js
中寻找ember
的情况,因为您的bower
中有ember-source
,因此不再是这种情况。此错误是由于
package.json
因此,这里的结论是at Class.htmlbarsOptions (/Users/mariselvan/Documents/sampleApp/node_modules/ember-inplace-edit/node_modules/ember-cli-htmlbars/ember-addon-main.js:78:25)
的版本较旧,您需要升级或修复自己。看看这个插件的package.json,它有这个固定的依赖性:
ember-inplace-edit
作为记录,我的ember 2.18应用默认情况下捆绑了"dependencies": {
"ember-cli-babel": "^5.1.3",
"ember-cli-htmlbars": "0.7.9" // this was released Jun 12, 2015
}
。因此,让我们转到0.7.9的发行版,下载源代码,然后查看:
"ember-cli-htmlbars": "^2.0.1"
所以您有几个合理的选择
templateCompilerPath: function() {
var config = this.projectConfig();
var templateCompilerPath = config['ember-cli-htmlbars'] && config['ember-cli-htmlbars'].templateCompilerPath;
if (!templateCompilerPath) {
// THIS ONLY WORKS FOR BOWER VERSIONS OF EMBER
templateCompilerPath = this.project.bowerDirectory + '/ember/ember-template-compiler';
}
return path.resolve(this.project.root, templateCompilerPath);
}
选项指向您的templateCompilerPath
版本(但这实际上是最糟糕的选择)