运行Sencha cmd 6.5时,我收到以下错误:
[错误] C2001:关闭编译器错误(解析错误。未定义标签“f”) - 压缩输入:1:4095
如何在compression-input:1:4095
找到代码?
当我使用以下内容在app.json
中添加自定义javascript文件时会发生这种情况:
"js": [
{
"path": "app.js",
"bundle": true
},{
"path": "custom.js",
"includeInBundle": true
}
],
当我删除custom.js
中对app.json
的引用时,错误消失。
如果我正确解释错误,则意味着闭包编译器在{1}的第1行(字符4095)上发现错误。但compression-input
的第一行并不长。
如何找到有问题的代码?
顺便说一句,闭包编译器中的custom.js
是什么?
答案 0 :(得分:2)
一年前我遇到过同样的问题,我被告知你无法从错误信息中找到它。
假设您已经尝试直接在浏览器中打开未编译的项目,并且没有出现语法错误,那么除了通过将custom.js内容分成两部分进一步缩小范围之外,您无能为力零件并独立检查。
在我的情况下,Ext.define
应该是Ext.create
,并且抛出语法错误,因为Ext.define
的使用在生成{{1}期间被重写到其他命令中}。也许如果你专门寻找它,你可以找到它。
答案 1 :(得分:1)
我也遇到过类似的问题。 我在 app.json 文件中禁用了压缩:
"testing": {
"compressor": {
//"type": "closure",
"type": "none",
"warningLevel": "quiet"
},
"output": "...."
}
并且我用编译器(可以下载)单独检查了输出的app.js文件:
java -jar closure-compiler-v20210302.jar --js app.js --js_output_file compiled_output.js