Desktop JRuby Application


#1

Since using the standard Ruby MRI seemed to be more trouble than it’s
worth, I figured it should be easier to accomplish my task in JRuby.

I want to run it past some people what my goals are and what I intend to
use. I’m writing a simple application that is to run 24/7 on a
computer/server (Windows mainly, with OS X & Linux in the future), so I
assume this would have to be a windows service (*nix Daemon). It’s
purpose is just to communicate periodically to an embedded device on the
local network. There will be a minimal GUI, with a notification/tray
icon. I need to be able to provide the software to clients without them
installing any external software/libraries.

My research yielded the following technologies.

JRuby

YAJSW OR JSW (Java Service Wrapper)

Rawr

Will all of these play together nicely? Is there anything I could change
to make it more fluid?


#2

On 10/04/2015 2:15pm, Cloudrck Tech wrote:

My research yielded the following technologies.

JRuby

YAJSW OR JSW (Java Service Wrapper)

Warbler

Will all of these play together nicely? Is there anything I could change
to make it more fluid?

Warbler isn’t much use to you unless you are deploying in a servlet
container. But there are a bunch of wrappers to make it easier to run a
jar as a Windows service.

http://stackoverflow.com/questions/15114674/run-jar-as-a-windows-service

No idea how you get a tray icon.

Ari


-------------------------->
Aristedes Maniatis
ish
http://www.ish.com.au
Level 1, 30 Wilson Street Newtown 2042 Australia
phone +61 2 9550 5001 fax +61 2 9550 4001
GPG fingerprint CBFB 84B4 738D 4E87 5E5C 5EFA EF6A 7D2E 3E49 102A


#3

Thanks for the reply. I figured out AWT allows you to tinker with tray
icons/applications.

Are you saying something like Rawr or Warbler is an overkill? I can just
use the built-in
(https://docs.oracle.com/javase/tutorial/deployment/jar/)

Thanks for the link, it looks like YAJSW OR JSW would be unneeded as
well?

Aristedes Maniatis wrote in post #1171847:

On 10/04/2015 2:15pm, Cloudrck Tech wrote:

My research yielded the following technologies.

JRuby

YAJSW OR JSW (Java Service Wrapper)

Warbler

Will all of these play together nicely? Is there anything I could change
to make it more fluid?

Warbler isn’t much use to you unless you are deploying in a servlet
container. But there are a bunch of wrappers to make it easier to run a
jar as a Windows service.

http://stackoverflow.com/questions/15114674/run-jar-as-a-windows-service

No idea how you get a tray icon.

Ari


-------------------------->
Aristedes Maniatis
ish
http://www.ish.com.au
Level 1, 30 Wilson Street Newtown 2042 Australia
phone +61 2 9550 5001 fax +61 2 9550 4001
GPG fingerprint CBFB 84B4 738D 4E87 5E5C 5EFA EF6A 7D2E 3E49 102A


#4

Ha, I seem to have missed my key word! :slight_smile:

You can check out shoes4 - we are in pre3 but building little nice gui
apps works quite easily - if you don’t mind the occasional bug :wink:
https://github.com/shoes/shoes4

shoes4 supports packaging as well - we use warbler under the hood. You
can check out our packaging code in either shoes-package (within shoes4)
or shoes/furoshiki. Packaging is still very alpha, though. There are a
couple of known issues around assets/package size - feel free to check
out the issues.

Help always welcome :slight_smile:

Cheers,
Tobi


#5

Cloudrck Tech wrote:

installing any external software/libraries.
to make it more fluid?
Have you looked at Monkeybars?

https://github.com/monkeybars/monkeybars-core

It’s designed to make JRuby GUI app development easy yet powerful.

JotBot was written with Monkeybars. It was a commercial product that
never sold well enough to keep maintaining. I eventually open-sourced
it.

https://github.com/Neurogami/JotBot

It’s a time-tracking tool that runs in the background, popping up at set
intervals to prompt the use to enter notes on what they are doing.

It has a tray icon to allow you to control/configure it when it is not
visible.

I used Rawr to package up all the required files (except for the JRE)
for easy distribution and installation in one file.

Rawr created the executable jar, and packaged up all required libraries
into a single .exe installer.

https://github.com/rawr/rawr

James B.

(maintainer of Rawr and Monkeybars)

Neurogami - Avant-garage Research & Development

http://www.neurogami.com

removed_email_address@domain.invalid


#6

Thanks for the information, this is what I was looking for, I’ll
definitely look into it.

James B. wrote in post #1171918:

Have you looked at Monkeybars?
It’s designed to make JRuby GUI app development easy yet powerful.

JotBot was written with Monkeybars. It was a commercial product that
never sold well enough to keep maintaining. I eventually open-sourced
it.
It’s a time-tracking tool that runs in the background, popping up at set
intervals to prompt the use to enter notes on what they are doing.

It has a tray icon to allow you to control/configure it when it is not
visible.

I used Rawr to package up all the required files (except for the JRE)
for easy distribution and installation in one file.

Rawr created the executable jar, and packaged up all required libraries
into a single .exe installer.


#7

Cloudrck Tech wrote:

Thanks for the reply. I figured out AWT allows you to tinker with tray
icons/applications.

Are you saying something like Rawr or Warbler is an overkill? I can just
use the built-in
(https://docs.oracle.com/javase/tutorial/deployment/jar/)

Rawr builds that jar for you, and will build an installer for you if you
like.

James B.

Neurogami - Avant-garage Research & Development

http://www.neurogami.com

removed_email_address@domain.invalid


#8

Sven S. wrote:

Hey, Monkeybars is alive again/still !!
Good to hear!

About six years ago I had started using it,
but after a while I got the impression
that Monkeybars was being abandoned.

It does what it’s supposed to. I only update it if changes in Java or
JRuby break something in Monkeybars or Rawr. Or if someone finds a bug.

There aren’t any more features I want to add.

James

Neurogami - Avant-garage Research & Development

http://www.neurogami.com

removed_email_address@domain.invalid


#9

Hey, Monkeybars is alive again/still !!
Good to hear!

About six years ago I had started using it,
but after a while I got the impression
that Monkeybars was being abandoned.

Thanks
Sven

James B. wrote in post #1171918:

Have you looked at Monkeybars?
It’s designed to make JRuby GUI app development easy yet powerful.

JotBot was written with Monkeybars. It was a commercial product that
never sold well enough to keep maintaining. I eventually open-sourced
it.
It’s a time-tracking tool that runs in the background, popping up at set
intervals to prompt the use to enter notes on what they are doing.

It has a tray icon to allow you to control/configure it when it is not
visible.

I used Rawr to package up all the required files (except for the JRE)
for easy distribution and installation in one file.

Rawr created the executable jar, and packaged up all required libraries
into a single .exe installer.