2013-04-29 2 views
0

В моем проекте у меня есть несколько модулей Maven, один из которых состоит из пользовательского интерфейса, написанного в Вааадине.
Все кажется прекрасным, но когда я пытаюсь запустить проект в Tomcat, я получаю сообщение об ошибке в браузере, что указывает на то, что Vaadin не был скомпилирован.
Может ли кто-нибудь описать, что я должен сделать, чтобы заставить Vaadin компиляцию на mvn-пакете всего проекта или может быть установлена ​​на mvn на модуле с Vaadin?Использование Vaadin с Maven

ответ

0

Если вы используете дополнения vaadin, вы должны скомпилировать их с помощью компилятора GWT, и вы должны использовать скомпилированный widgetset.

Лучший способ - плагин eclipse. Вы можете найти его в Google.

Для использования пользовательских widgetset: https://vaadin.com/en_GB/book/vaadin6/-/page/gwt.usage.html (Vaadin 6)

+1

Я бы не рассматривал плагин eclipse для быть «лучшим способом» для компиляции виджета, особенно когда речь идет о использовании vaadin с _maven_. Одна из причин, по которой люди используют maven, заключается в том, что вам не нужно «искать Google» и делать это вручную. – miq

+0

Я написал «поиск google», потому что SO не дал разрешения на установку ссылки более одного. Ссылка: https://developers.google.com/eclipse/docs/getting_started – kodmanyagha

0

Я просто предполагаю, что вы не значит использовать слово «предотвратить». У вас есть эти плагины в вашем помпе?

<plugin> 
    <artifactId>maven-clean-plugin</artifactId> 
    <version>2.4.1</version> 
    <configuration> 
    <filesets> 
     <fileset> 
      <directory>src/main/webapp/VAADIN/widgetsets</directory> 
     </fileset> 
    </filesets> 
    </configuration> 
</plugin> 
<plugin> 
    <groupId>com.vaadin</groupId> 
    <artifactId>vaadin-maven-plugin</artifactId> 
    <version>${vaadin.plugin.version}</version> 
    <configuration> 
    <extraJvmArgs>-Xmx512M -Xss1024k</extraJvmArgs> 
    <!-- <runTarget>mobilemail</runTarget> --> 
    <!-- We are doing "inplace" but into subdir VAADIN/widgetsets. This 
    way compatible with Vaadin eclipse plugin. --> 
    <webappDirectory>${basedir}/src/main/webapp/VAADIN/widgetsets</webappDirectory> 
    <hostedWebapp>${basedir}/src/main/webapp/VAADIN/widgetsets</hostedWebapp> 
    <noServer>true</noServer> 
    <!-- Remove draftCompile when project is ready --> 
    <draftCompile>false</draftCompile> 
    <compileReport>true</compileReport> 
    <style>OBF</style> 
    <strict>true</strict> 
    <runTarget>http://localhost:8080/</runTarget> 
    </configuration> 
    <executions> 
    <execution> 
     <configuration> 
      <!-- if you don't specify any modules, the plugin will find them --> 
      <!-- <modules> <module>com.vaadin.demo.mobilemail.gwt.ColorPickerWidgetSet</module> 
      </modules> --> 
     </configuration> 
     <goals> 
      <goal>resources</goal> 
      <goal>update-widgetset</goal> 
      <goal>compile</goal> 
     </goals> 
    </execution> 
    </executions> 
</plugin> 

Убедитесь, что вы определили vaadin.plugin.version переменные в соответствии с Vaadin версией, и если вам нужно проверить что-нибудь еще от «оригинального» приложений Vaadin П, генерировать свежие приложения Vaadin по телефону:

mvn archetype:generate -DarchetypeGroupId=com.vaadin -DarchetypeArtifactId=vaadin-archetype-application -DarchetypeVersion=7.0.5 -DgroupId=your.company -DartifactId=project-name -Dversion=1.0 -Dpackaging=war 

Вы можете, конечно, изменить архетипическую модель в соответствии с вашими потребностями.

Если вы хотите предотвратить сборку виджетов, я думаю, вам достаточно прокомментировать resources и compile целей из vaadin-maven-plugin. Я не уверен на 100%, потому что я только сделал это в Vaadin 6 (... в котором вам нужно прокомментировать те же самые цели из gwt-maven-plugin)

Смежные вопросы