2014-11-01 3 views
0

Моя цель - установить непрерывную интеграцию (IntelliJ IDEA -> github -> jenkins -> tomcat), но процесс «Построить веб-приложение Vaadin» не закончится (см. Ниже) , Этот процесс неявно вызывается из моей сборки maven и заканчивается только тогда, когда я убиваю сервер (btw: у сервера есть ограничение 500 мб).Jenkins - Создание веб-приложения Vaadin навсегда

Endless Build

Цель Maven в Дженкинс "чистый пакет". Военный файл будет развернут через другой плагин jenkins, но дженкинс даже не заходит так далеко.

Нарастание часть моего ПОМ выглядит следующим образом (это от архетипа, и я не понимаю эту часть пока):

<build> 
     <plugins> 
      <!--vaadin--> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-compiler-plugin</artifactId> 
       <configuration> 
        <source>1.7</source> 
        <target>1.7</target> 
       </configuration> 
      </plugin> 
      <!-- As we are doing "inplace" GWT compilation, ensure the widgetset --> 
      <!-- directory is cleaned properly --> 
      <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> 
      <!--<plugin>--> 
       <!--<groupId>org.mortbay.jetty</groupId>--> 
       <!--<artifactId>jetty-maven-plugin</artifactId>--> 
      <!--</plugin>--> 
      <!--vaadin end--> 
     </plugins> 
     <pluginManagement> 
      <plugins> 
       <!--vaadin--> 
       <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.--> 
       <plugin> 
        <groupId>org.eclipse.m2e</groupId> 
        <artifactId>lifecycle-mapping</artifactId> 
        <version>1.0.0</version> 
        <configuration> 
         <lifecycleMappingMetadata> 
          <pluginExecutions> 
           <pluginExecution> 
            <pluginExecutionFilter> 
             <groupId>com.vaadin</groupId> 
             <artifactId> 
              vaadin-maven-plugin 
             </artifactId> 
             <versionRange> 
              [7.0.0.beta3,) 
             </versionRange> 
             <goals> 
              <goal>resources</goal> 
              <goal>update-widgetset</goal> 
              <goal>compile</goal> 
             </goals> 
            </pluginExecutionFilter> 
            <action> 
             <ignore></ignore> 
            </action> 
           </pluginExecution> 
          </pluginExecutions> 
         </lifecycleMappingMetadata> 
        </configuration> 
       </plugin> 
       <!--vaadin end--> 
      </plugins> 
     </pluginManagement> 
    </build> 

автоматически сгенерированная AppWidgetSet выглядит следующим образом:

<module> 
    <inherits name="com.vaadin.DefaultWidgetSet"/> 
</module> 

Файл web.xml выглядит следующим образом:

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" 
     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
     id="WebApp_ID" version="2.5"> 
    <display-name>Vaadin Web Application</display-name> 
    <context-param> 
     <description>Vaadin production mode</description> 
     <param-name>productionMode</param-name> 
     <param-value>false</param-value> 
    </context-param> 
    <servlet> 
     <servlet-name>Vaadin Application Servlet</servlet-name> 
     <servlet-class>com.vaadin.server.VaadinServlet</servlet-class> 
     <init-param> 
      <description>Vaadin UI to display</description> 
      <param-name>UI</param-name> 
      <param-value>de.bahr.dhbw.logframe.UI.NavigatorUI</param-value> 
     </init-param> 
     <init-param> 
      <description>Application widgetset</description> 
      <param-name>widgetset</param-name> 
      <param-value>de.bahr.dhbw.logframe.AppWidgetSet</param-value> 
     </init-param> 
    </servlet> 
    <servlet-mapping> 
     <servlet-name>Vaadin Application Servlet</servlet-name> 
     <url-pattern>/*</url-pattern> 
    </servlet-mapping> 
</web-app> 

есть ли какое-либо руководство по использованию Vaadi n с Дженкинсом? Можете ли вы помочь мне запустить эту настройку? Заранее спасибо!

(также спросил у https://vaadin.com/forum#!/thread/8523481.)

+0

Скорее всего, это замена до смерти. Параметры JVM не настроены для вашей виртуальной машины. –

ответ

1

Как Thorbjørn отметил этот вопрос из-за способности сервера.

1-й серверный лимит помех составляет 512 МБ и не имеет места подкачки (хостер не предоставляет своп изначально). Увеличение пространства подкачки приводит к тем же результатам. Поэтому я выбрал другой сервер с 1 ГБ бара и без обмена. В этом случае я столкнулся с «maven failed with status 137», который сказал мне (через google) использовать swap.

И это сделало это: не менее 1 ГБ бара и некоторые свопы (в моем случае 4 ГБ). Компиляция виджеты vaadin кажется довольно тяжелой.

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