2012-05-09 16 views
6

'u bir araya getirmiyor ... Sencha Command belgelerini okuduğum gibi, yapının bana otomatik olarak (Phantom JS kullanarak) ne yapacağımı söyleyebildiğini söylüyor. Bağımlılıklar, hangi sıradadır. Buna dayanarak, "sencha app build production" komutunu, app.json dosyasında el ile kullanıp kullanmadığımı dikkate almadan tüm bağımlılıklarımı bir js dosyasına birleştirmeyi bekliyorum. Ancak, bunun gerçekleştiğini görmüyorum.sencha app build prodüksiyon: jms

App.json dosyasında JS dosyalarının listesini elle tutmalı mıyım? Öyleyse, o zaman bu iyidir. Sadece belgelerden farklı anladım. Lütfen yardım et.

düzenlemek-
Yani benim index.html çok az. Yalnızca bir dış kaynak js dosyasına bir komut dosyası etiketi ve 'sdk/microloader/development.js' dosyasına bir komut dosyası etiketi vardır. Benim app.js, index.html sayfamda başvurulan değil. Uygulamamı direklediğimde ve "sencha app build production" komutunu çalıştırdığımda, hata olmadan tamamlanır. Öyleyse benim yeni app.js bakmak olduğunu

[email protected] ~/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 

: Ben yapı çalıştırdığınızda biz burada terminalde çıkışı kuyu 500. üzerinde olduğunu biliyoruz Ancak, sadece, 53 bağımlılıkları bulur benim build/prodüksiyon klasörümde ve bir grup sencha bağımlılığını bir araya getirdi, ancak benim ve benim için olan tek bir dosya benim app.json'umda başvurulan tek js dosyası olan app.js'im. İşte bu yüzden onu almam ve minimize etmem için onu app.json'a elle koymam gerekip gerekmediğini merak ediyordum. App.js adresimde listelenen bağımlılıkların hiçbiri, yerleşik app.js. uygulamasına dahil edilmemelidir.

Özetle, app.js'mi tüm bağımlılıklarımla oluşturmak için beklediğim davranışların aynısını vermiyor. Herhangi bir düşünce güzel olurdu.

+0

ST2 bağımlılıklarından mı bahsediyorsunuz ('gerektiren' kullanılarak bildirilmiştir) veya dışsal bağımlılıklar hakkında mı konuşuyorsunuz? Anladığım kadarıyla, yalnızca MVC mimarinizden gelen js dosyaları ve 'require' kullanılarak açıkça belirtilen bağımlılıklar yerleşik uygulamanıza dahil edilecektir. Harici js komut dosyalarını (ST2 ile ilgili olmayan) eklemek istiyorsanız, onları app.json'da belirtmeniz gerektiğini düşünüyorum. Her neyse, ST2 betiklerini harici olanlarla karıştırmak iyi bir şey mi? Bu kütüphaneler mi? – borck

+0

ST2 bağımlılıkları hakkında konuşuyorum. Hepsi bir sınıf dosyasındaki bir bölüm gerektirir. – frosty

+0

Bu garip ... Bahsettiğiniz bağımlılıkların sayısı gerçekten oldukça düşük. Hangi bağımlılıkların eksik olduğunu belirleyebiliyor musunuz? Benim durumumda, sencha komutu her zaman app.json'daki herhangi bir şeyi değiştirmeye gerek kalmadan her şeyi içerir ... Uygulamanızı sencha komutuyla oluşturdunuz mu? – borck

cevap

1

Deneyimlerimden, hiç bir zaman app.json'u değiştirmem gerekti. 'Ext.requires' ifadesinde bahsedilen her şey, sencha komutuyla son (benzersiz) js dosyasında otomatik olarak birleştirilir.

Hala sorun yaşıyorsanız, doğru şekilde işlenmeyen dosyalar hakkında daha fazla ayrıntı vermelisiniz.

+0

Bir düzenleme ekledim. Lütfen kontrol et. – frosty