2012-04-10 17 views
5

誰かがMavenでExtJs 4を使ったことがありますか? 今のところ、Sencha SDKツールは、デプロイされ、起動されたWebアプリケーション(Java Webアプリケーション)でのみ動作します。この場合でも、生成されたapp-all.jsにはすべての依存関係が含まれず、Extは多くのdepをダウンロードします。実行時に 私が必要とするのは、何らかの形で生産ファイル生成をビルドプロセスに統合することです。Sencha Windows SDKツール2.0.0。 Mavenの統合

答えて

1

他のリソース(html、画像、CSS、その他のjavascript)と同じように、リソース(この場合はExt JS 4)を提供できます。

Mavenソリューションを提供する方法やアイディアがいくつかあります。これに加えて

、最新バージョンでは、煎茶Cmdを3(formly SDKツール)も、そうhttp://www.sencha.com/forum/forumdisplay.php?8-Sencha-Cmd

になります -

私の考えではあなたはリソースのようなものを追加するという単純な方法に固執することができます。ビルドする場合は、Maven内でスクリプトやSencha SDK/Cmd実行可能ファイル(例:maven-exec-plugin)を実行できます。だから、

、あなたは右のpom.xmlからSDKツールを初期化する簡単な煎茶のMavenプラグインがあるだろうと思った場合:号;)

1

あなたはMavenのは、煎茶CMDを使用して、あなたの煎茶ExtJSのプロジェクトをビルドすることができます。それはむしろ簡単です。現時点で

https://github.com/dobromyslov/sencha-extjs-maven

Sencha ExtJS 5.0 BETA available: は私のプロジェクト例煎茶ExtJSの5 +煎茶Cmdを5 + Mavenを確認してください。 Sencha CMD docsを読んで実践してみてください。

それからちょうどwebappフォルダにプロジェクトを入れて、このような煎茶CMDであなたのExtJSアプリケーションを構築するためにexec-maven-pluginを使用:あなたは結果のWARファイルから不要なファイルを削除したい場合は

<plugin> 
<groupId>org.codehaus.mojo</groupId> 
<artifactId>exec-maven-plugin</artifactId> 
<version>1.2.1</version> 
<executions> 
    <execution> 
     <id>sencha-compile</id> 
     <phase>compile</phase> 
     <goals> 
      <goal>exec</goal> 
     </goals> 
     <configuration> 
      <!-- Set path to your Sencha Cmd executable--> 
      <executable>../Sencha/Cmd/5.0.0.116/sencha</executable> 
      <arguments> 
       <argument>-sdk</argument> 
       <argument>${basedir}/src/main/webapp</argument> 
       <argument>app</argument> 
       <argument>build</argument> 
       <argument>--clean</argument> 
       <argument>--environment</argument> 
       <argument>${sencha.env}</argument> 
       <argument>--destination</argument> 
       <argument>${basedir}/src/main/webapp/build</argument> 
      </arguments> 
     </configuration> 
    </execution> 
</executions> 

そして、このように構成された除外とmaven-war-pluginを使用します。

<plugin> 
<groupId>org.apache.maven.plugins</groupId> 
<artifactId>maven-war-plugin</artifactId> 
<version>2.4</version> 
<configuration> 
    <failOnMissingWebXml>false</failOnMissingWebXml> 
    <webResources> 
     <resource> 
      <directory>src/main/webapp/build/${sencha.env}/MyApp</directory> 
      <excludes> 
       <exclude>**/Readme.md</exclude> 
      </excludes> 
     </resource> 
    </webResources> 
    <packagingExcludes>.sencha/**,app/**,build/**,ext/**,overrides/**,packages/**,sass/**,bootstrap.css,bootstrap.js,bootstrap.json,build.xml,Readme.md</packagingExcludes> 
</configuration>