Troubleshoot Sencha Cmd

If you are new the Sencha ExtJS, it could be bit of pain to work with ExtJS Framework and ExtJS cmd. Ext JS Cmd is required to do various operation like creating the Sencha  Workspace, or to creating the ExtJS app. In this post I will jot down my journey working with ExtJS framework and Cmd.

Version Blunder

I had the project requirement to work with ExtJS 5. I got the ExtJS 5 framework from the companies repository. Being novice, I googled ‘Download ExtJS Cmd’ and download the Ext Cmd from the first link I got the google.

Traped! It was ExtJS Cmd version 6.x. Nowhere, I told me you can’t work with Cmd 6 on ExtJS 5.x framework. I create the workspace using Cmd, worked great.

When I tried generate app command, damn error

{sencha workspace directory}> sencha generate app DemoApp

After spending hours of google to find solution, I realize the hard way, Cmd and framework version go hand in hand. If you are working with Framework version 5.1, use Cmd version 5.1. If you are working with ExtJS 6.x, then download CMD version 6x.

Another word of caution, don’t install multiple version on Sencha cmd on your machine. Sencha cmd resisters the path in the environment variable, and multiple version is easy way to point to wrong version without noticing it.  Better, uninstall all versions and then install the one you really need to work in project.

Download archive

While I was writing the article, ExtJS 6 is out and practically, nowhere on the Sencha website I can find link to download Ext 5.1 GPL version framework. Thanks to Openlogic, I was able to find at

http://olex.openlogic.com/packages/extjs/5.1.0

You can download the 5.1 cmd at
https://www.sencha.com/products/extjs/cmd-download/

In the screenshot of the download sencha cmd, hope it remains the same when you are reading it

Cmd Download WebsiteCmd Download Website 2

Dependency Hell

After sorting the version problem, comes the dependency hell. Here is what I have done. Gone to the Ext 5.1 framework directory and generate the app. Cool it worked, and generated the sample app base on template at c:\demoapp directory.

CreateApp

Don’t understand these commands thinking-idea-animated-animation-smiley-emoticon-000339-large.gif. Think to read Sencha Docs

DemoApp

Next, would be built this app. Fire command

sencha app build 

Ten-ta-ten. Error. It shows it trying to do something with compass and ruby, and for newbie like me, couldn’t understand what the heck this means.

SenchaBuildError

Plus to me, ExtJS is merely JavaScript framework, why the hell it requires Ruby runtime and wait, what is Compass?

Time to resort to google again. After an hours of savaging to various pages, I found Compass is gem package which it use to compile SASS scripts. For executing gem package, it requires Ruby runtime.

Another lesson learnt, while installing ExtJS 5 cmd, nowhere in the installation, it points out, it has dependency on Ruby and packages like Compass. Nor, does the installer install this dependency for you. Way to go Sencha, start writing better installers.

I have written another post, which list down the dependency, which I got to know after lots of reading over the web, and nice youtube video, which shows the order which these dependency needs to be install.

See ya for now, happy learning Sencha Ext JS!

Advertisements

One thought on “Troubleshoot Sencha Cmd

  1. Pingback: Understanding Sencha Cmd | Technical Insanity

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s