Going to Production

When I took the Fast Track to Ext JS 4 Development class, there was a chapter titled "Going to Production".&nbsp; This of course dealt with creating .jsb files and then using the SDK.&nbsp; Can someone provide me with the new and improved way of going to production using Sencha CMD?<br><br>I am currently running Sencha Cmd v3.0.0.250.<br><br>What I have done thus far:<br>1. Created a new application using 'sencha-s c:\ext-4.1.1a generate app AM .'<br>2. Built the app using 'sencha app build'<br><br>I managed to work thru all my circular reference and 'comma' issues and my build appears to finish successfully with all messages being of type [INF].<br><br>However, when I look into the <strong>all-classes.js</strong> file, I see the following: <br>1.&nbsp; <strong>ext-all.js</strong> code starting with [var Ext=Ext||] and ending with [return Ext.ClassManager.get(a)}});]<br>2.&nbsp; followed by my<strong> app.js</strong> file<br>3.&nbsp; followed by [Ext.define("Ext.data.connection", {mixins: {observable.....]<br><br>No where do I see my Ext.define statements for all my classes.<br><br>I did run the sencha app refresh to generate a new bootstrap.js file that looks to contain all my classes and I noticed that this file is referenced in the index.html file.<br><br>What am I missing?&nbsp;&nbsp; Are you all seeing the same using the sencha build tool?

not sure why post lost all my formatting

When I took the Fast Track to Ext JS 4 Development class, there was a chapter titled "Going to Production". This of course dealt with creating .jsb files and then using the SDK. Can someone provide me with the new and improved way of going to production using Sencha CMD?

I am currently running Sencha Cmd v3.0.0.250.

What I have done thus far:
1. Created a new application using 'sencha-s c:\ext-4.1.1a generate app AM .'
2. Built the app using 'sencha app build'

I managed to work thru all my circular reference and 'comma' issues and my build appears to finish successfully with all messages being of type [INF].

However, when I look into the all-classes.js file, I see the following:
1. ext-all.js code starting with [var Ext=Ext||] and ending with [return Ext.ClassManager.get(a)}});]
2.followed by my app.js file
3.followed by [Ext.define("Ext.data.connection", {mixins: {observable.....]

No where do I see my Ext.define statements for all my classes.

I did run the sencha app refresh to generate a new bootstrap.js file that looks to contain all my classes and I noticed that this file is referenced in the index.html file.

What am I missing? Are you all seeing the same using the sencha build tool?

Managed to get a bit further today. A couple of things that I found thru trial and error were as follows:

1) Remove reference to bootstrap.js inside index.html since for me this was not needed.
2) Use Ext.application() instead of Ext.create('Ext.app.Application') in app.js. Using Ext.create caused all of my custom ext code to be excluded from the final all-classes.js file. 3) Remove any debugger; statements as this will cause an error during the compression phase since it is a reserved word in Java.

So, while I am getting a successful build, and expected classes are inside the all-classes.js file, when deploying this, I am getting all sorts of errors. I removed the Ext.Loader.setConfig entry in app.js, but I am seeing calls to http://localhost:xxxx/application/YY/model/ZZZModel.js where xxxx is the port, application is my appname, and ZZZ is every model in my project. It appears as if dynamic loading is still turned on, not sure why.

Am I supposed to replace the bootstrap reference from ext-dev.js to ext-all.js in index.html?

Can anyone at Sencha please let me know if an updated chapter on "Going to Production" is available?

One thing that bit me was that I neglected to add requires for 'Ext.data.association.hasMany' or 'Ext.data.association.hasOne' to all of my models that were using it. See if this gets your further. After I added this, I got much further in the process and the build works like a charm now. Also, use testing to help debug (sencha app build testing). This will not compress the output and you will get better error messages, instead of 'k is undefined'.

I like answering my own questions
Sorry...this was not aimed at you, but merely a comment that Sencha has never responded to any of my questions and I seem to end up having to answer my own.

As far as manifest is concerned, I did not have this problem. Did you see in the bootstrap.js file that there was a addClassPathMappings...this probably came from app.js. You can refresh these using 'sencha app refresh', which will regenerate your bootstrap.js file.

I sorted my dependency issues by setting the classpaths in .sencha/app/sencha.cfg

Thanks for the heads up on the testing build, I was unaware of that feature.

On a related note:
I've started a thread on Sencha's delivery of Sencha Cmd to try and highlight the poor documentation among other things. If enough people agree with what I've said and have their own input then things will hopefully be sorted out.