我有一个CssResource,我想要一些css类“映射”到方法:
@ClassName("top-table") String topTable();
但是我想关闭模糊GWT(至少在开发中,为了更好的调试firebug等)。
有没有办法实现这一点?我知道我可以在我的css文件中使用@external,但是我必须定义所有我的css类,如@external .c1,.c2,.c3等…
像@external。*将会解决我的问题,但至少在gwt 2.0.x中似乎不可用
我目前的解决方案是使用:
<set-configuration-property name="CssResource.style" value="pretty"/>
但是这并不会阻止混淆,只是让它更漂亮:)我知道obf是需要避免碰撞,但我没有在我的情况下,真的想关闭混淆
解决方法
根据GWT文档,一般可以禁用复制。从
CssResource section “levers and knobs”:
The configuration property CssResource.style may be set to pretty
which will disable class-name obfuscation as well as pretty-print the
CSS content. Combine this with a ClientBundle.enableInlining value of
false to produce a CSS expression which is amenable to client-side
editing.
在我的工作GWT项目中,我可以看到这个属性实际上是在Resources.gwt.xml中设置的(包含在gwt-user.jar中):
<!-- This can be used to make CssResource produce human-readable CSS --> <define-configuration-property name="CssResource.style" is-multi-valued="false" /> <set-configuration-property name="CssResource.style" value="obf" />
我不清楚的是如何覆盖这个值,因为它已经设置好了。你有没有想出来?