6

だから...SenchaCommandのドキュメントを読んだとき、ビルドは自動的に(Phantom JSを使用して)すべての依存関係が何であるか、そしてどのような順序であるかを教えてくれると教えてくれました。これに基づいて、app.jsonファイルに手動で含めたかどうかに関係なく、「senchaappbuildproduction」コマンドがすべての依存関係を1つのjsファイルに連結することを期待しています。しかし、私はこれが起こるのを見ていません。

app.jsonでJSファイルのリストを手動で維持する必要がありますか?もしそうなら、それは問題ありません。ドキュメントとは違うことを理解しました。助けてください。

編集-
したがって、私のindex.htmlは非常に最小限です。1つの外部リソースjsファイルへのスクリプトタグと、「sdk / microloader/development.js」への1つのスクリプトタグのみがあります。app.jsがindex.htmlで参照されていません。アプリディレクトリにアクセスして「senchaappbuildproduction」コマンドを実行すると、エラーなしで終了します。ただし、500をはるかに超えることがわかっている場合は、53の依存関係しか見つかりません。ビルドを実行したときのターミナルの出力は次のとおりです。

aaronfrost@topnotch ~/source/ab/AreaBook/web/src/main/webapp/sencha2 $ sencha app build -e production 
[INFO] Deploying your application to /home/aaronfrost/source/ab/AreaBook/web/src/main/webapp/sencha2/build/production
[INFO] Copied sdk/sencha-touch.js
[INFO] Copied app.js
[INFO] Copied resources/css/app.css
[INFO] Copied resources/icons
[INFO] Copied resources/loading
[INFO] Resolving your application dependencies (file:////path/to/my/sencha2/index.html)
[INFO] Found 53 dependencies. Concatenating all into '/dir/to/my/sencha2/build/production/app.js'
[INFO] Processed sdk/sencha-touch.js
[INFO] Minifying sdk/sencha-touch.js
[INFO] Processed app.js
[INFO] Minifying app.js
[INFO] Minifying resources/css/app.css
[INFO] Minified sdk/sencha-touch.js
[INFO] Minified app.js
[INFO] Minified resources/css/app.css
[INFO] Generated app.json
[INFO] Embedded microloader into index.html
[INFO] Generating checksum for appCache item: index.html
[INFO] Generated cache.manifest

次に、ビルド/本番フォルダーにある新しいapp.jsを調べます。これにより、多数のsencha依存関係が連結されていますが、連結および縮小されるファイルはapp.jsのみです。私のapp.jsonで参照されている唯一のjsファイルです。そのため、連結して縮小するために、手動でapp.jsonに配置する必要があるのではないかと考えていました。私のapp.jsにリストされている依存関係のいずれも、ビルドされたapp.jsに含まれる必要のあるセクションはありません。

要約すると、すべての依存関係を使用してapp.jsをビルドするという、私が期待するのと同じ動作は得られません。どんな考えでもいいでしょう。

4

1 に答える 1

1

私の経験から、app.jsonを変更する必要はありませんでした。'Ext.requires'ステートメントで言及されているものはすべて、senchaコマンドによって最終的な(一意の)jsファイルに自動的に連結されます。

それでも問題が解決しない場合は、正しく処理されていないファイルについてさらに詳しく説明する必要があります。

于 2012-05-09T17:42:07.353 に答える