Проект GWT 2.2 с проблемой компиляции CssResource с использованием муравья
В более крупном приложении GWT 2.2.0 мы хотим использовать динамические CellTables. В отличие от других виджетов, CellTable не использует стандартные имена для стилей CSS (например, "gwt-MenuItem"). Поэтому мы должны перейти от стандартного CSS к CssResource, который также должен включать стандартные стили "gwt-", как показано ниже:
public interface IPreferences
{
public interface MyCssResource extends CssResource
{
String content();
...
}
@ImportedWithPrefix("gwt")
public interface GwtCss extends CssResource
{
String MenuItem();
String MenuBar();
String TabLayoutPanelTab();
}
...
public interface MyResources extends ClientBundle
{
public static final MyResources INSTANCE = GWT.create(MyResources.class);
@Source("preferences.css")
@Import(GwtCss.class) <--- any imported interface will produce error
MyCssResource cssStd();
}
}
Это прекрасно работает в размещенном режиме и может быть скомпилировано с помощью eclipse, но не скомпилировано с использованием ant:
<target name="gwtc" depends="compile" description="GWT compile to JavaScript">
<java failonerror="true" fork="true" classname="com.google.gwt.dev.Compiler">
<classpath>
<pathelement location="src"/>
<pathelement location="gwt-servlet.jar"/>
<pathelement location="gwt-dev.jar"/>
<pathelement location="gwt-user.jar"/>
</classpath>
<jvmarg value="-Xmx256M"/>
<arg line="-war"/>
<arg value="war"/>
<arg value="...module.file"/>
</java>
</target>
[java] [ERROR] Annotation error: cannot resolve ...IPreferences$GwtCss
[java] java.lang.ClassNotFoundException: ...IPreferences$GwtCss
Я не смог найти ни намека на то, что нужно сделать, чтобы скомпилировать это за пределами затмения. Спасибо за любой комментарий.
1 ответ
Вам необходимо сгенерировать файлы ресурсов в отдельной задаче. Вызов (как пример из документации) для его генерации:
java -cp gwt-dev.jar:gwt-user.jar com.google.gwt.resources.css.InterfaceGenerator \
-standalone -typeName some.package.MyCssResource -css input.css
Так что это может быть задача Java, как и компилятор. Это задокументировано в документации gwt CssResource: http://code.google.com/p/google-web-toolkit/wiki/CssResource