gwt - जीडब्ल्यूटी 2.0 सीएसएस रिसोर्स में, मैं अपने सभी सीएसएस वर्गों के लिए obfuscation कैसे बंद कर सकते हैं?




gwt2 cssresource (3)

आप एक सीएसएस here को obfuscated होने से रोकने के लिए here का उपयोग कर सकते हैं।

आपके मामले में, आपकी सीएसएस फ़ाइल में हो सकता है

@external top-table;
.top-table {
  some: rule;
}

मेरे पास एक सीएसएस संसाधन है जहां मैं कुछ सीएसएस वर्गों को "मैप किए गए" तरीकों से प्राप्त करना चाहता हूं:

@ClassName("top-table")
String topTable();

लेकिन मैं obwuscation GWT को बंद करना चाहता हूं (कम से कम विकास करते समय, फायरबग में बेहतर डीबगिंग के लिए, आदि)।

क्या इसे हासिल करने का कोई आसान तरीका है? मुझे पता है कि मैं अपने सीएसएस फ़ाइल में @ बाहरी का उपयोग कर सकता हूं लेकिन फिर मुझे अपने सभी सीएसएस वर्गों को @external .c1, .c2, .c3, आदि जैसे परिभाषित करना होगा ...

@External। * की तरह कुछ मेरी समस्या का समाधान करेगा लेकिन यह कम से कम gwt 2.0.x में उपलब्ध नहीं प्रतीत होता है

मेरा वर्तमान समाधान उपयोग करना है:

<set-configuration-property name="CssResource.style" value="pretty"/>

लेकिन यह obfuscation बंद नहीं करता है, बस यह सुंदर बनाता है :) मुझे पता है कि टकराव से बचने के लिए ओबीएफ की जरूरत है, लेकिन मेरे पास यह मेरे मामले में नहीं है और वास्तव में obfuscation बंद करना चाहते हैं


आप सभी विरासत कक्षाओं के लिए एक बार में obfuscation को अक्षम करने के लिए, आप here क्या कहा जाता है इसका फायदा उठा सकते here

संक्षेप में, विरासत सीएसएस फ़ाइल में, जिसे आप CssResource बंडल का उपयोग करके बाध्यकारी कर रहे हैं, इस घोषणा को दें: @external .*;

फ़ाइल में सभी वर्ग जिनके पास यह घोषणा फ़ाइल है, को अपवित्र नहीं किया जाएगा।


जीडब्ल्यूटी दस्तावेज के मुताबिक सामान्य रूप से अपर्याप्तता को अक्षम करना संभव है। सीएसएस संसाधन स्रोत से "लीवर और knobs" :

कॉन्फ़िगरेशन प्रॉपर्टी CssResource.style को सुंदर पर सेट किया जा सकता है जो क्लास-नाम obfuscation को अक्षम कर देगा और सीएसएस सामग्री को सुंदर प्रिंट करेगा। एक क्लाइंटबंडल के साथ इसे संयोजित करें। एक सीएसएस अभिव्यक्ति उत्पन्न करने के लिए झूठ के इनलाइनिंग मूल्य जो क्लाइंट-साइड संपादन के लिए उपयुक्त है।

मेरे काम जीडब्ल्यूटी परियोजना में, मैं देख सकता हूं कि यह संपत्ति वास्तव में 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" />

मेरे लिए अस्पष्ट यह है कि इस मान को ओवरराइड कैसे करें, क्योंकि यह पहले से सेट है। क्या आप इसे समझने में कामयाब रहे?