2009-06-18 2 views
11

С компилятором GWT можно ли передать свойства pass в качестве аргументов компилятору GWT? Я знаю, что вы можете передавать определенные определенные параметры, такие как -war и -style, но это для передачи значений свойств, таких как «user.agents» или «locale».Могу ли я передать аргументы (свойства отложенного связывания) компилятору GWT?

Из того, что я вижу в документации, свойства могут быть установлены только с помощью дескриптора модуля. Но я хочу иметь возможность контролировать эти свойства извне, из моего скрипта сборки.

Я попытался найти документацию о том, какие аргументы поддерживаются com.google.gwt.dev.Compile, но для этого класса не существует справочной документации. Документы долгое время посвящены практическим действиям, а подробные сведения - о проблемах.

ответ

12

Ответ нет!

Я задал тот же самый вопрос в группе новостей участников и в настоящее время нет ничего доступного.

Они думают о добавлении поддержки предоставления дополнительного .gwt.xml для переопределения/настройки вещей извне. Это будет охватывать то, что я хотел сделать, но если вы действительно хотите получить общий доступ к свойствам во время компиляции, я боюсь, что это невозможно.

Возможно, вам следует создать функциональный запрос ... дайте мне знать. Я также начну с него, так как было бы очень полезно включать/выключать некоторые вещи из командной строки компилятора.

+0

Такая уверенность оценена, даже если это не то, что я хотел услышать :) – skaffman

+2

Функция уже в работе. План состоит в том, чтобы иметь возможность передавать значения свойств, такие как user.agent и locale, в командной строке. Это будет эквивалентно добавлению set-property в ваш .gwt.xml-файл. –

+0

@KellyNorton Любые достижения в этом отношении? –

4

Это аргументы. Пример из муравья построить файл я написал:

<target name="compile.gwt" depends="compile"> 
    <java failonerror="true" classname="com.google.gwt.dev.Compiler" fork="true"> 
     <arg value="-war" /> 
     <arg value="${webcontent.dir}" /> 
     <arg value="-style" /> 
     <arg value="obfuscated" /> 
     <arg value="${module.name}" /> 
     <jvmarg value="-Xmx256m" /> 
     <jvmarg value="-Xss64M" /> 
     <classpath> 
      <path refid="project.class.path" /> 
      <pathelement path="${gwt.home}/gwt-dev-windows.jar" /> 
     </classpath> 
    </java> 
</target> 

Я думаю, что это охватывает все флаги:

Debugging and Compiling - Google Web Toolkit - Google Code

Насколько проходите ли вы пользовательские агент, я не видел его, но я тоже не смотрел.

+1

Спасибо, я уточнил, что вопрос должен касаться передачи значений свойств. – skaffman

3

Если генератор представляет собой пользовательский класс, вы всегда можете передать аргументы -Dname = value в java-команду и получить к ним доступ с помощью System.getProperty («name»). Даже если генератор закончен, возможно, вы можете подклассифицировать его и ввести/переопределить свойства, обернув GeneratorContext, переданный суперклассу и заменив его PropertyOracle.