我正在使用SuperDevMode与Chrome,它工作良好,直到源代码地图突然停止显示在Chrome。
CodeServer抛出以下异常:Multiple fragment 0 sourcemaps found. Too many permutations.
在汇编期间,它显示:
Compiling 5 permutations
Compiling permutation 0...
Source Maps Enabled
Compiling permutation 1...
Source Maps Enabled
Compiling permutation 2...
Source Maps Enabled
Compiling permutation 3...
Source Maps Enabled
Compiling permutation 4...
Source Maps Enabled
Compile of permutations succeeded有什么想法吗?
发布于 2013-07-26 13:32:01
默认情况下,GWT编译6个基本排列,每个浏览器类别一个。
这方面有一个报道的问题:问题7458:当user.agent丢失时,Super模式不应该编译6个排列
关于问题说明的建议解决办法:
限制gwt.xml文件中的浏览器排列。例如,如果您正在使用Chrome或Safari:
<set-property name="user.agent" value="safari"/>此外,如果您使用的是Sencha,我还建议您阅读以下文章:使用GWT编译器进行更好的构建
根据这篇文章,我还在我的gwt.xml中添加了以下一行:
<collapse-all-properties />最后,我对SuperDev模式的配置如下:
<add-linker name="xsiframe"/>
<set-configuration-property name="devModeRedirectEnabled" value="true"/>
<set-property name="compiler.useSourceMaps" value="true" />
<set-property name="user.agent" value="safari"/>
<collapse-all-properties />因此,GWT只编译一个置换:
binding: user.agent=safari
binding: compiler.useSourceMaps=true
binding: locale=en
Compiling module com.mycompany.Main
...
Compiling 1 permutation
Compiling permutation 0...
Source Maps Enabled
Compile of permutations succeeded发布于 2012-12-11 14:45:09
如果您添加了区域设置,但是没有显式地添加en区域设置,并且/或在加载页面之前不“删除”default区域设置和,则会发生这种情况。
例如,在我的模块中,我有:
<extend-property name="locale" values="fr" />
<set-property-fallback name="locale" value="fr"/>使用此设置,有两个区域设置:fr和default (但是不再使用default区域设置,因为我重写了回退到fr)。
在启动SuperDevMode时,它会编译2个排列(可能是因为它强制locale到en,但实际上并没有检查模块中是否存在这样的区域设置)。
我以前已经启动了这个应用程序,打开了Dev模式,但后来停止并重新启动了SuperDevMode。当我在Chrome中刷新页面时,因为它仍然处于dev模式(状态存储在localStorage中),它从SuperDevMode加载脚本并尝试立即加载源映射,这失败了,因为SuperDevMode编译了2个排列,而不仅仅是一个。
单击Dev并编译将强制SuperDevMode使用浏览器环境中的属性重新编译(这里是locale=fr,因为这是回退)。因此,它编译了一个置换,并且源映射再次工作。
在我的具体情况下,我需要一个置换;我所要做的就是添加<set-property name="locale" value="fr"/>。
你一定也有类似的情况。
抱歉,这是我能分享的全部信息。没有权威。
https://stackoverflow.com/questions/13819338
复制相似问题