-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
glmmer "package[msi]" command results in JRuby 9.3.6.0 StackOverFlow error. #24
Comments
Wow! you're stumbling on the strangest issues. This one seems to be caused by a recent upgrade to In the meantime, I noticed that MSI packaging works just fine on Windows 10 with JDK 16 and JRuby 9.3.4.0 (it always works for me). I updated the README to downgrade the requirements on Windows for now until that strange issue with Otherwise, sometimes launching JRuby applications on Windows 10 is a bit slow. Just be patient. A packaged app should start within 20 seconds max (but, probably within 10 seconds or less). On Mac ARM64 machines, JRuby apps now start in 2.5 seconds only, which is incredible, and totally resolves any slow startup times for JRuby on that platform. It would be awesome if that were to happen on all platforms eventually, but right now only Mac ARM64 machines have the special fast M1 and M2 processors that Apple built recently. In any case, let me know if packaging works for you on Windows 10 with JDK 16 and JRuby 9.3.4.0. And, if so, please close the issue (I'll handle the warbler issue separately). |
Still seeing the same issues after updating the following: java version: java 16.0.2 2021-07-20 JRuby version: After upgrading I tried running jruby 9.3.4.0 (2.6.8) |
So, I have an older JDK 16 / JRuby 9.3.4.0 setup that works on Windows 10. I did not try to reinstall them. I wonder if the latest patch revisions of them have bugs. I’ll try to reinstall and let you know how it goes. |
One question I could ask in the meantime is what version of bundler do you have? If it’s newer than 2.2.19, which comes with jruby I believe, then I would advice you to uninstall your version and stick to the default bundler that comes with jruby. That might work. |
Thanks @AndyObtiva I just checked bundle version with
|
I will try to install version |
Sorry. That’s the version I meant. No need to install a new one. The recommendation was to uninstall any newer version than the default one that comes with JRuby. Seems that’s what you have, so we’re good there. |
I noticed you did an abort on the glimmer packaging task. Was that after you saw the stack overflow (which is caused by an infinite loop in the juwelier gem code), or did you see it after you hit control C on the keyboard because it was taking too long? |
Oh yes I interrupted with |
Do you know roughly how long it took before you saw the stack overflow error? |
It was pretty immediate after running |
Interesting. That’s different from the issue I encountered with JDK18 and JRuby 9.3.6.0, which was a freeze (it hangs for a long time, seemed indefinite) right when warbler starts. |
yeah I just verified that the error shows up immediately after running
|
Did it at least generate config/warble.rb inside the project? It is supposed to do so the first time you run the glimmer package command. |
Oh yes that was generated |
Ok, some potential good news. The infinite loop repeating line in juwelier is complaining about git. Are you missing git as a prerequisite? You need to install git for windows including git bash. This is the link glimmer dsl for SWT mentions in pre-requisites for installing it: https://git-scm.com/download/win |
Confirmed I do have git installed via Powershell:
|
Does the scaffolded project have a “.git” directory? Also, can you run “git log” and see a history ? |
Nope I don't see any git initialization files, except for a .gitignore. |
Ok, that’s the issue. It’s sending Juwelier into an infinite loop. Run “git init” and then verify you have a “.git “ directory, then run git status to double check git is working. Afterwards, re-run “glimmer package[msi]”. If it doesn’t work, try to make one commit to the local git repo with all files and then run the packaging command again. |
Nice! Initializing git repo seems to have made some progress, no longer seeing the immediate StackOverflow error. Currently on the |
FYI it's still on |
Huh..it seems you’re now encountering the issue I saw (warbler hanging) could you please share config/warble.rb? I wanna see if it got generated correctly. |
In any case, one thing you can try is to delete config/warble.rb after sharing it, and then rerun the packaging command. It should generate it again, and perhaps correctly this time since it won’t encounter the stackoverflow issue. Let me know if it works then or if it gets stuck. |
Just noticed it might be using 2 jruby instances:
config/warble.rb: https://gist.github.com/jayczech23/643b509e6e8f61395229b7f83fd6e383 |
Oh yeah. You need to go to your windows env and disable the other JRuby in the path env vars. You can delete and save in a notepad for the future to restore if you later want to |
Okay just removed jruby 9.3.6 from PATH and re-executed glimmer package Did notice this warning
|
That’s normal (just a warning). It has an open issue (non-serious ) under jruby or one of its subprojects. |
Sounds good, still seems to be hanging at JAR generation step with warbler |
Ok, I think I know why. Your earlier output contained this: jruby --version Your jruby is not installed correctly against JDK 16. It picked up JDK 18 (must be because you forgot to set JAVA_HOME env var to JDK16), thus is exhibiting the warbler freezing problem. My recommendation is to uninstall all JDKs and JRubys and start over with JDK 16 and jruby 9.3.4.0 again. Also, please install git using the windows installer recommended in the glimmer dsl for SWT project: https://git-scm.com/download/win It is obvious that juwelier had a problem detecting git from power shell and failed to create the local git repo via “git init” automatically. I think a clean redo (including rescaffolding another project just in case) might resolve all your issues. |
Thanks I will uninstall and try again with a fresh install. will keep you posted on status. |
@jayczech23 I got good news! I fixed the issue in the most recent release of Glimmer DSL for SWT: version 4.24.1.3 It now works with JRuby 9.3.6.0 and JDK 18 on Windows 10. Apparently, the cause of the Warbler freezing problem is the bundler gem that is included in JRuby because it does not include its own gemspec as as the case normally when installed manually (I must have not detected the issue in the past because I probably unconsciously installed a newer version of bundler). If I install the latest bundler (or even reinstall the same bundler version included in JRuby), the problem goes away because bundler ends up having a gemspec, so I updated Glimmer DSL for SWT to do that automatically before scaffolding a project on Windows. I found a report of the issue at the Warbler project, and I commented on it further to hopefully have the next version of JRuby fix the issue in the included bundler: jruby/warbler#517 So, in your setup, if you haven't deleted it, if you install the latest bundler I am closing this issue for now, but if there are still any unaddressed issues you are concerned about, we can reopen the issue or create a new one if it's a different matter. Cheers! |
After uninstalling and reinstalling every dependency mentioned above, tried to package an msi from a fresh scaffold. I was able to run |
Ah I found it under a different folder, please disregard :D |
Yes, |
Working beautifully now thanks a lot @AndyObtiva !! |
Desktop (please complete the following information and make sure it matches Glimmer Pre-Requisites before reporting an issue):
x86_64
Windows 10 Pro
java 18.0.2
jruby 9.3.6.0 (2.6.8)
4.24.1.1
Describe the issue
Wanted to report an error I am experiencing upon executing
glimmer package[msi]
commands to build an msi on Windows.Gist:
Error packaging MSI with glimmer
A strange behavior I have seen is if I let the batch job run to completion, at times it will generate an MSI which can be successfully installed, but when I try to run it, it never opens the application. I can successfully run the app using
glimmer run
however.The text was updated successfully, but these errors were encountered: