I am interested in using scripting support in Eclipse. So far, I have
considered EclipseShell and Monkey. Given the extent to which Monkey is
integrated into Eclipse, I was leaning towards Monkey. However, Monkey
only supports JavaScript (or am I wrong?). Anyways, I recently found
Groovy-Monkey which seems to support numerous other scripting languages
(although implementing such support seems simple after looking at the code
of Groovy-Monkey).
In short, I am at the cross roads of making a decision about Monkey or
Groovy-Monkey. So, any information and/or arguments to choose one over
the other would be appreciated. Or is there is an argument to use
EclipseShell?
waiting for reply,
- VPR
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I have heard some good things about Eclipse Shell, but to be frank I didn't get it. I wrote this tool because I wanted a scripting capability within Eclipse and found other tools wanting. This tool is originally a port of Eclipse Monkey to the Groovy Scripting language, but I soon found I wanted to take it further.
Groovy Monkey is based on the Bean Scripting Framework and the Eclipse Jobs API.
BSF allows you to write the scripts in any language ( with the metadata header on top ) that correctly implements the BSF Engine. I have found that Groovy ( 1.0 JSR 06 ), Beanshell and JRuby all seem to work rather well. Jython and Jacl support are not up to par, but you are welcome to try them.
The Eclipse Jobs API allows you to support concurrency within Eclipse. The last time I saw Eclipse Monkey, all scripts ran from within the UI Thread ( bad practice by the way ) and would lock up the workbench if you screwed up. Groovy Monkey doesn't stop you from hurting yourself, but rather makes you go out of your way to do it. By default all scripts are run from within a Job and that means that a progress monitor is provided so that you can provide progress feedback and allow for the user to cancel the operation. You can also have it run from within a UIJob or a WorkspaceJob too.
There are also some help with the writing of scripts, including a "New Groovy Monkey Script" wizard and an outline view that provides some information about what is available in the script's binding.
I hope this can help, I also wrote a set of blog entries at http://iacobus.blogspot.com/ where I actually try and work through a couple of relatively real world examples.
I hope this helps,
James E. Ervin
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi,
I am interested in using scripting support in Eclipse. So far, I have
considered EclipseShell and Monkey. Given the extent to which Monkey is
integrated into Eclipse, I was leaning towards Monkey. However, Monkey
only supports JavaScript (or am I wrong?). Anyways, I recently found
Groovy-Monkey which seems to support numerous other scripting languages
(although implementing such support seems simple after looking at the code
of Groovy-Monkey).
In short, I am at the cross roads of making a decision about Monkey or
Groovy-Monkey. So, any information and/or arguments to choose one over
the other would be appreciated. Or is there is an argument to use
EclipseShell?
waiting for reply,
- VPR
I have heard some good things about Eclipse Shell, but to be frank I didn't get it. I wrote this tool because I wanted a scripting capability within Eclipse and found other tools wanting. This tool is originally a port of Eclipse Monkey to the Groovy Scripting language, but I soon found I wanted to take it further.
Groovy Monkey is based on the Bean Scripting Framework and the Eclipse Jobs API.
BSF allows you to write the scripts in any language ( with the metadata header on top ) that correctly implements the BSF Engine. I have found that Groovy ( 1.0 JSR 06 ), Beanshell and JRuby all seem to work rather well. Jython and Jacl support are not up to par, but you are welcome to try them.
The Eclipse Jobs API allows you to support concurrency within Eclipse. The last time I saw Eclipse Monkey, all scripts ran from within the UI Thread ( bad practice by the way ) and would lock up the workbench if you screwed up. Groovy Monkey doesn't stop you from hurting yourself, but rather makes you go out of your way to do it. By default all scripts are run from within a Job and that means that a progress monitor is provided so that you can provide progress feedback and allow for the user to cancel the operation. You can also have it run from within a UIJob or a WorkspaceJob too.
There are also some help with the writing of scripts, including a "New Groovy Monkey Script" wizard and an outline view that provides some information about what is available in the script's binding.
I hope this can help, I also wrote a set of blog entries at http://iacobus.blogspot.com/ where I actually try and work through a couple of relatively real world examples.
I hope this helps,
James E. Ervin
Thanks for the elaborate reply.
I have decided to use the groovy via GroovyMonkey; however, I will post my success in using other languages if and when I do.
BTW, I have stumbled upon a possible bug in GroovyMonkey on Eclipse 3.1. I have created a bug report (1545076) along with a test project.
Thank you,
- Venkatesh Prasad Ranganath