I ran into several issues running 5.2.1 on Mac OS Big Sur. I did an ‘upgrade’ using brew which unfortunately upgraded everything, including commandbox. Here are the issues I’ve encountered:
- web.host no longer works
I have verified I can get the below server settings to start:
but when I add the ‘host’ option
the server will no longer start. It display the following and error:
ERROR (5.2.1+00295) The host name [util.aievolution.com] can’t be found. Do you need to add a host file entry?
- Adobe@11 no longer loads. An error is thrown on the ‘javax.activation.DataHandler’. I’ve attached the debug output for review.
While trying to work through the above, is there a way via ‘brew’ to downgrade back to 5.2.0?
adobe@11_debug.txt (24.9 KB)
I’m guessing you had a host file entry for util.aievolution.com and your upgrade removed it. As the error suggested-- do you need to add it back? Seems pretty straightforward there
As for the Adobe error, I’ve no clue on that one. My first guess is to check the version of Java that is being used as it may be an incompatibility with the latest openjdk. You can always set your adobe server to use another version of Java.
server set jvm.javaVersion=openjdk11
Thank you for the quick reply. I realized 2 things after the reply:
- I had not (re)installed the commandbox-hostupdater. So I added the host manually & it fixed it. Then I installed the hostupdater and it was resolved as well. Thanks.
- I updated to use the ‘openjdk8’ version and it worked as planned.
A few other quick notes for anyone updating to BigSur.
a) CommandBox didn’t like it when I tried to use the ‘zsh’ shell. The system would ‘hang’ when trying to start the server. I changed to the default shell and all was fine.
b) The ‘commandbox.properties’ file needed to be placed in the ‘/usr/local/Cellar/commandbox/5.2.1/libexec/bin’ directory before it picked up the default home directory.
Thanks again for the quick assist. Really appreciate it.
I had not (re)installed the commandbox-hostupdater
I’m curious why your upgrade would have removed the CommandBox home. Did you change the user you run as, or did the upgrade delete your old user home? I would have expected CommandBox to stay intact there. Were all of your modules, settings, and server histories removed?
I updated to use the ‘openjdk8’ version and it worked as planned.
Can you confirm which version of Java wasn’t working. Just for my curiosity sake since I’m sure others will run into it. If you hadn’t asked CommandBox for a specific version of java, I assume the server was using whatever version your CLI was using. And you can see that version in the output of the “info” command.
CommandBox didn’t like it when I tried to use the ‘zsh’ shell. The system would ‘hang’ when trying to start the server. I changed to the default shell and all was fine.
That’s interesting. I don’t use a Mac and I don’t use Zsh so I’d need some help debugging this. If you were add --verbose to your server start, can you show where it hangs. I assume it’s the part where it runs the shell script, but I’d like to see if there’s an error or something. When you have zshell configured, does running native commands such as “!ls -la” also hang or is it just the server? I assume you’ve set it like so?
The ‘commandbox.properties’ file needed to be placed in the ‘/usr/local/Cellar/commandbox/5.2.1/libexec/bin’ directory before it picked up the default home directory.
Yes, that is how Homebrew works and it is documented here:
1- After encountering a few issues (from may software apps), I ended up hitting the ‘eject button’ and wiped out the .CommandBox directory. I was working from memory on the reconfiguration and missed installing this module. Had I read my own installation & configuration instructions, I would have resolved this myself. Alas, the frustration of the upgrade to BigSur got the better of me, sorry.
2- The openjdk11 didn’t work, nor did the default is Java Version: 15.0.1 (N/A); I’ll do some additional testing later this week and report back.
3- Yes. I need to let the setup ‘sit’ for a day or so to get caught up. I’ll reset the shell and then start-up w/ Verbose. Should I add the results to this thread? If no, please advise where to send the info. Happy to assist w/ troubleshooting.
4- Correct but in version 5.2.0 I only have the ‘…/5.2.0/bin’ directory. In 5.2.1 there is a ‘…/5.2.1/bin’ AND ‘…/5.2.1/libexec/bin’. Only the ‘…/5.2.1/libexect/bin’ directory picked up the ‘commandbox.properties’ file setting properly.
Thanks again and let me know how best to give you the debug info (this thread or other).
Should I add the results to this thread?
in version 5.2.0 I only have the ‘…/5.2.0/bin’ directory. In 5.2.1 there is a ‘…/5.2.1/bin’ AND ‘…/5.2.1/libexec/bin’. Only the ‘…/5.2.1/libexect/bin’ directory picked up the ‘commandbox.properties’ file setting properly.
Ahh, I see. The Homebrew maintainers did have me make a change to how it installs. Can you please send a pull to the docs to help clarify that? There’s an “edit on github” link on the page.
Brad and Jason,
Thought I’d chime in here to share my experience with commandbox after updating to Big Slur, I mean Sur. Before I explain anything, I should let you know that I am running cb 4.0.0 with the Java runtime included. I don’t think the version of command box is very important though- pretty sure it’s the jre that Big Sur didn’t like in my case.
I’m not sure if what I did to get cb up and running is “recommended” or not and I’m definitely not a MacOS /Big Sur expert or even a *nix system administrator. I don’t know if this works on cb installs that do not include the jre. I can say that commandbox has been running like a champ for me ever since I “fixed” the jre.
The details are a bit blurry, but I’m pretty sure commandbox (the ‘box’ command) wouldn’t even start after upgrading to big sur. I needed it desperately so I dug into the problem. I noticed that the error was referencing one of the lib*.dylib dynamic libraries in the ./jre/lib folder of the path where my ‘box’ app lives. If you aren’t sure, type
which box at a shell prompt. If you are using commandbox with jre, you’ll find ./jre/lib in the folder box is in.
Basically, the error I was getting lead me to believe that one of the dynlib files was from an unknown source/developer and was being blocked by the OS. So I held down ‘ctrl’ and clicked the file, then clicked ‘open’. When you do this, the prompt changes and allows you to bypass the unknown source message and run it anyway. After doing this and then firing up commandbox, I got a different error referencing another dynamic library file in the ./jre/lib folder. I ctrl+clicked and bypassed that one and launched cb again. This process repeated until finally, cb started up. I ran into similar problems when I tried doing other commands and I think in the end, I ctrl+clicked all of the dylib files - commandbox has worked ever since.
When you ctrl+click a file and select open, you should get a dialog that says "macOS can not verify the developer of " and then a warning about opening your system to malware. If you click “open”, an exception for that file will be permanently added and you will not see the warning again.
Not sure if this will be helpful but I thought I’d share.
Thanks for the information. What version of the included JRE do you have? I’m curious if the newer openjdk versions are trusteed by Mac OS.
Is there a reason you’re on such an old version of CommandBox? (4.0.0 when the latest is 5.2.1)
What version of the included JRE do you have?
Looks like it’s version 1.8.0_162
Is there a reason you’re on such an old version of CommandBox?
Yes. It is on my old company-issued laptop. I haven’t upgraded cb on it. I have 5.2.x running on a new laptop. It is not on Big Sur however, and I have no plans to upgrade it in the foreseeable future. (Fool me once…)