I’ve been using box exe to start CommandBox for quite some time without issues. This morning, I updated from 1.x to the latest version. Now, when I click on box exe, it throws some kind of error and then closes. The error just flashes for a moment before the shell closes so I’m unable to read the error.
If you want to see the error on a binary that closes right away, open up a cmd window in the same directory as the binary and then run “box.exe” from the command line. You should be able to see whatever the error was on the screen.
CommandBox is typically very backwards compatible, but wow, 1.0 is very very old at this point and a lot of things have changed. I would recommend you delete your ~/.CommandBox folder and get a fresh start. This means you’ll lose any server or settings, but it’s probably for the best. In the future, try to stay more current with upgrades as each little jump is most always a seamless upgrade.
I’ve always assumed upgrades would work from any previous version so now I’m really curious what broke. I may have to dig up an old 1.0 binary and try it. I used to test each new release on all previous versions, but as time went on there were so many previous versions, I would just test on the more recent ones.
Glad you like it. CommandBox has been in constant development since it came out. If you have some time, read through our docs here to get up to speed on everything we’ve added:
Thanks. One question I do have regards the “Java and JVM” link found under the “Server Settings” heading in the CF Administrator. I’ve had a CF16 developer edition installed on my machine for ( not via command box) and I can click on that link to add a class path.
When I use command box to spin up a server, the “Java and JVM” link doesn’t appear in the left hand nav. Why is this? I presently have a project for a client where I need to add a class path for the client’s CFX tags, but am unable to.
This is a limitation of Adobe ColdFusion itself. That Java and JVM page is a little cute hand holding page they provide that only works on a “normal” install of ColdFusion which comes bundled with their little hacked up version of Tomcat, etc and it’s based around the jvm.config files that are unique to their Tomcat stuff.
CommandBox is considered a J2E installation, like if you had dropped a WAR file into Jetty or WIldfly. Except, we abstract all of it for you and cleverly deploy the Adobe CF WAR on JBoss Undertow (part of the Wildfly) project, which is a lightweight and super fast servlet container. As such, CommandBox provides it’s own (and much better IMO) methods of configuring things like JVM args, Java versions, ports, AJP listeners, web alialises, etc, etc. All of this goes in a handy file called “server.json” which sits in your web root by default and contains all the settings needed to run your server to it’s fully portable. (Look into another project called CFConfig to script your datasources and such).
When ColdFusion detects that it’s not a standard Tomcat-based instal, it hides a few menu items (and settings like whitespace management, which is kind of dumb). But not to worry, it’s easy to add custom folders to your classpath in CommandBox and it uses the server.json file we mentioned above. Read this page in the docs I pointed you to in my previous E-mail:
While you’re in there, read the whole Embedded Server section. You can do just about everything you need with CommandBox and probably a few things you never knew were possible. The only other things that don’t work out of the box with CommandBox is any of the external services like .NET integrations, CFHTMLTOPDF tag, etc. They can be configured, but since they run outside of the Java engine, they’re not easy to package as a WAR.