0

我需要更改系统属性

gwt.imageResource.maxBundleSize

到 1000。我该怎么做?

正如我在这里看到的那样,该财产存在; https://code.google.com/p/google-web-toolkit/source/browse/releases/2.5/user/src/com/google/gwt/resources/rg/ImageBundleBuilder.java#471

但是我不知道如何在 GWT.XML 中设置它:

<set-property name="gwt.imageResource.maxBundleSize" value="1000" />

结果是;

[错误] 找不到属性“gwt.imageResource.maxBundleSize”

所以我尝试创建属性;

<define-property name="gwt.imageResource.maxBundleSize" values="1000" />

但这让我明白了;

[错误] 无效的属性值“1000”

事实上,任何数值都会导致此错误。它唯一接受的是以字母开头的字符串……但这显然没有用,因为谷歌的代码是;

private static final int IMAGE_MAX_SIZE = Integer.getInteger(
  "gwt.imageResource.maxBundleSize", 256);

所以我很难过我应该如何设置这个属性。

4

1 回答 1

1
<define-property name="gwt.imageResource.maxBundleSize" values="1000" />

您在此处创建新属性,而不是为现有属性分配值。我不知道为什么会发生错误,但请放心,即使错误没有发生,您仍然不会设置您尝试设置的值。因为...

private static final int IMAGE_MAX_SIZE = Integer.getInteger(
   "gwt.imageResource.maxBundleSize", 256);

该代码不会从您的 gwt.xml 文件中读取。从 javadoc 为Integer.getInteger

/**
 * Determines the integer value of the system property with the
 * specified name.

据此,您应该在运行编译器(或开发模式)时设置系统属性。将此添加到 JVM args 可能如下所示:

-Dgwt.imageResource.maxBundleSize=1000
于 2013-10-31T03:09:09.537 回答