2011-12-16 9 views
1

私はvisualizationsForVaadinアドオンを使用しようとしています。問題は、カスタムウィジェットセットをコンパイルする必要があることです。私はこれを一日中扱ってきましたが、まだそれをコンパイルすることはできません。vaadinでwidgetSetをコンパイルするには?

  • GWT-ajaxloader 1.1:6.7.1
  • GWT 2.3.0

次の依存関係は、私のポンポンファイルである

  • Vaadin:まず第一に、ここに私の設定です.0
  • validation-api 1.0.0.GA
  • gwt-visualization 1.0.2
  • gwt-user 2.3.0
  • ビジュアライゼーション1.1.2。

私はMavenのGWTプラグインとウィジェットセットをコンパイルしようとすると、私は例外を取得:

Loading inherited module 'com.google.gwt.core.XSLinker' 
[ERROR] Line 22: Unexpected element 'when-linker-added' 
[ERROR] Failure while parsing XML 

興味深いのは、それは私の知る限りとして(自動的にロードされGWT-devのライブラリということであり、知っている)バージョン2.0.3のです 私は可能な限り(不可能でさえ)、まだ何も試しました。ある時点で、検証クラスのインポートを解決できないと不平を言った例外がありました。私は、それが他のいくつかの依存関係によって解決されたと思います。助けてください。ありがとうございました。

POM構成:

<plugin> 
<groupId>org.codehaus.mojo</groupId> 
<artifactId>gwt-maven-plugin</artifactId> 
<!-- Version 2.1.0-1 works at least with Vaadin 6.5 --> 
<version>2.3.0</version> 
<configuration> 
    <!-- if you don't specify any modules, the plugin will find them --> 
    <!--modules> 
     .. 
    </modules--> 
    <webappDirectory>${project.build.directory}/${project.build.finalName}/VAADIN/widgetsets</webappDirectory> 
    <extraJvmArgs>-Xmx512M -Xss1024k</extraJvmArgs> 
    <runTarget>clean</runTarget> 
    <hostedWebapp>${project.build.directory}/${project.build.finalName}</hostedWebapp> 
    <noServer>true</noServer> 
    <port>8080</port> 
    <soyc>false</soyc> 
</configuration> 
<executions> 
    <execution> 
     <goals> 
      <goal>resources</goal> 
      <goal>compile</goal> 
     </goals> 
    </execution> 
</executions> 
<dependencies> 
    <dependency> 
    <groupId>com.google.gwt</groupId> 
    <artifactId>gwt-dev</artifactId> 
    <version>2.3.0</version> 
    </dependency> 
    <dependency> 
    <groupId>com.google.gwt</groupId> 
    <artifactId>gwt-user</artifactId> 
    <version>${gwt.version}</version> 
    </dependency> 
</dependencies> 
</plugin> 

そして、ここでは、GWTの依存関係が

<dependency> 
     <groupId>com.google.gwt.google-apis</groupId> 
     <artifactId>gwt-visualization</artifactId> 
     <version>1.0.2</version> 
    </dependency> 
    <dependency> 
     <groupId>javax.validation</groupId> 
     <artifactId>validation-api</artifactId> 
     <version>1.0.0.GA</version> 
    </dependency>   
    <dependency> 
     <groupId>com.google.gwt.google-apis</groupId> 
     <artifactId>gwt-ajaxloader</artifactId> 
     <version>1.1.0</version> 
    </dependency> 
<dependency> 
     <groupId>org.vaadin.addons</groupId> 
     <artifactId>visualizationsforvaadin</artifactId> 
     <version>1.1.2</version> 
    </dependency> 
    <dependency> 
     <groupId>javax</groupId> 
     <artifactId>javaee-web-api</artifactId> 
     <version>6.0</version> 
     <scope>provided</scope> 
    </dependency> 
    <dependency> 
     <groupId>com.vaadin</groupId> 
     <artifactId>vaadin</artifactId> 
     <version>${vaadin.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>com.google.gwt</groupId> 
     <artifactId>gwt-user</artifactId> 
     <version>${gwt.version}</version> 
    </dependency> 
+0

pom.xmlまたは少なくとも関連する部分が表示されますか。 "gwt-devライブラリ、それは自動的に読み込まれます"とはどういう意味ですか? – miq

+0

こんにちは、私はPOMファイルから関連する部分を追加しました。 gwt-devライブラリは依存関係には含まれていないはずです(私が読んだとおり)。しかし、私はgwt-devをバージョン2.3.0のプラグイン依存関係に持っていますが、EclipseのMavenライブラリではバージョン2.0.3が表示されています。 –

答えて

1

ある私は、Eclipseでカスタムウィジェットで完全に機能Vaadinプロジェクトを持っていると私はgwt-への参照を見つけることができませんプロジェクトの任意の場所に置いてください。プロジェクトプロパティ - > Javaビルドパス - >ライブラリを開き、gwt-devへの参照をすべて削除します。また、pom.xmlから削除し、ウィジェットセットを再コンパイルしてみてください。

編集:あなたのgwt-userにもなる可能性があります。 gwt-userのバージョンを2.3.0に設定してください(すでにそうでない場合)。providedにスコープを設定してください。

3

私はこれと過去2日間に苦労しました。今後の参考のため :

あなたが必要なもの:

<dependency> 
     <groupId>com.vaadin</groupId> 
     <artifactId>vaadin-client-compiler</artifactId> 
     <version>${versions.vaadin}</version> 
    </dependency> 

設定GWT-のmaven-pluginの次のように(あなたはもちろん、私が使用するすべてのconfigsを必要としない場合があります):

<plugin> 
      <groupId>org.codehaus.mojo</groupId> 
      <artifactId>gwt-maven-plugin</artifactId> 
      <version>${versions.gwt}</version> 
      <configuration> 
       <extraJvmArgs>-Xmx512M -Xss1024k</extraJvmArgs> 
       <webappDirectory>${basedir}/src/main/webapp/VAADIN/widgetsets 
       </webappDirectory> 
       <hostedWebapp>${basedir}/src/main/webapp/VAADIN/widgetsets 
       </hostedWebapp> 
       <noServer>true</noServer> 
       <draftCompile>true</draftCompile> 
       <compileReport>false</compileReport> 
       <style>DETAILED</style> 
       <runTarget>http://localhost:8080/</runTarget> 
      </configuration> 
      <executions> 
       <execution> 
        <goals> 
         <goal>resources</goal> 
         <goal>compile</goal> 
        </goals> 
       </execution> 
      </executions> 
     </plugin> 

vaadin-のmaven-pluginの:

<plugin> 
      <groupId>com.vaadin</groupId> 
      <artifactId>vaadin-maven-plugin</artifactId> 
      <version>${versions.vaadin}</version> 
      <executions> 
       <execution> 
        <configuration> 
         <!--<modules> 
          <module>org.vaadin.aceeditor.AceEditorWidgetSet</module> 
         </modules>--> 
        </configuration> 
        <goals> 
         <goal>update-widgetset</goal> 
        </goals> 
       </execution> 
      </executions> 
     </plugin> 

あなたはまた、あなたのMavenを設定することもできます-clean - プラグイン:サーブレット(例としてエースエディタ)のweb.xmlで

<plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-clean-plugin</artifactId> 
      <version>2.5</version> 
      <configuration> 
       <filesets> 
        <fileset> 
         <directory> 
          ${basedir}/src/main/webapp/VAADIN/widgetsets 
         </directory> 
        </fileset> 
       </filesets> 
      </configuration> 
     </plugin> 

:私は私のpom.xmlでの依存関係としてGWTを含んでいませんでした

<init-param> 
     <param-name>widgetset</param-name> 
     <param-value>org.vaadin.aceeditor.AceEditorWidgetSet</param-value> 
    </init-param> 

注意。

+0

ありがとうございます。重要な部分は出力ディレクトリを正しく定義しています。この '$ {basedir}/src/main/webapp/VAADIN/widgetsets' –

関連する問題