blob: aa28844b8ea709490cc379d39ba979915a8699b3 [file] [log] [blame]
Manuel L. Santillan168ab572006-09-12 16:38:16 +00001Mishell provides an interactive console
2that executes scripts in different scripting languages.
3Running mishell:
Manuel L. Santillan2045b0c2006-09-27 23:10:46 +00004JRE 6 is needed (because of javax.script). Mishell provides some built-in commands and interprets ruby, javascript or any other language that you
Manuel L. Santillan168ab572006-09-12 16:38:16 +00005configure. You can also load scripts with the load command. Type 'help' for available commands.
Manuel L. Santillan168ab572006-09-12 16:38:16 +00006You can see an example of configuring Felix for launching both Jmood and mishell in the same OSGi platform in the FelixLauncher
7class in the src/test/java dir. Remember to change the paths to match your installation.
8
9The initial object that is exported to the scripting engine is a JMoodProxyManager that extends
10the general-purpose MBeanProxyManager (from the jmxintrospector project) to simplify working with JMood.
11For example, when running on OSGi with JMood you can add the mbeans by typing:
Manuel L. Santillan2045b0c2006-09-27 23:10:46 +000012$manager.addLocalServer(nil) #Ruby NOTE: This has been fixed in latest versions and should be fixed
Manuel L. Santillan168ab572006-09-12 16:38:16 +000013or
14manager.addLocalServer(null) //Javascript
15And you issue commands like
16$manager.objects.each{|mbean| puts mbean.objectName} #this lists the objectnames for all mbeans known to the shell
17
18
19
20
21IMPORTANT:
22Dependencies that need to be manually installed:
231. It needs Java 6 to work (as it depends on javax.script API).
24Once that API is stable and released standalone, it should also work in Java 5.
Manuel L. Santillan2045b0c2006-09-27 23:10:46 +0000252. It needs JMX introspector.
263. It needs classes from com.sun.jruby.* and from org.jruby. The easiest way is to bundle both together
27and export both packages in order to run ruby.
Manuel L. Santillan168ab572006-09-12 16:38:16 +000028 - The binding is available at https://scripting.dev.java.net/ and licensed
29 under the BSD license. Download the jsr223-engines.[zip|tar.gz]
30 and install the jruby-engine.jar
31 - JRuby is available at http://dist.codehaus.org/jruby/ under a tri-license: CPL/LGPL/GPL
32 located at engines/jruby/build/jruby-engine.jar. JRuby implementation
334. If you want to use any other language, you should:
Manuel L. Santillan2045b0c2006-09-27 23:10:46 +000034 - Create and install a bundle (or more) that contain the necessary classes and export the packages.
Manuel L. Santillan168ab572006-09-12 16:38:16 +000035
36