作者godfat (godfat 真常)
看板java
標題Re: [問題] 從文字檔讀取演算法
時間Mon Aug 17 21:58:34 2009
: 推 PsMonkey:如果只是抽換 jar(class),那 Class.forName() 開始吧. 08/17 16
: 推 Schelfaniel:真可惜,不然可以用 Script Language 的 @@ 08/17 17
: 推 godfat:隨便試的,僅供參考 http://gist.github.com/169032 08/17 18
: → eicsarch:感謝上面的大大,我先試試看你們教的 08/17 20
: → godfat:同一個連結,我加了 java 呼叫 jruby 範例 @@ 08/17 21
順便貼出來好了,看看有沒有人對 jruby 有興趣。
要用 jruby 除了下載 jruby.jar 以外,還要找 script engine.
jdk/jre 6 以上可以用 jsr223
https://scripting.dev.java.net/servlets/ProjectDocumentList
解壓縮出來找到 jruby-engine.jar, 搭配 jruby.jar 就能用了。
java -cp .:jruby-engine.jar:jruby.jar JRuby rloader.rb Loader # => 40
前置作業是:
ScriptEngineManager m = new ScriptEngineManager();
ScriptEngine jruby = m.getEngineByName("jruby");
接著就能 jruby.eval("this is ruby script...");
上面的範例裡,是先把 ruby script 讀入記憶體:
jruby.eval("require '" + args[0] + "'");
接著就直接呼叫 ruby script 了:
jruby.eval(args[1] + ".apply($input)", context);
我不確定這邊 type 之間會怎麼樣轉換,有興趣的人試試吧。
不過 scala 應該完全談不上 scripting language...
--
「行け!Loki!」
(rocky ロッキー)
-Gurumin ぐるみん 王子? XD
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.135.28.18
推 Schelfaniel:比照 godfat 式加了一個 clojure 版 @@ 08/18 03:25
→ godfat:gist 的好處是可以 fork, clone, 還有 history 08/18 10:12
→ adrianshum:Scala 我是發神經寫了... 當時不知道在想什麼 XDDD 08/18 10:59
→ godfat:多試試很好啊,好不好用是另一回事 XDDD 08/18 13:12
→ Schelfaniel:這世界,其實需要多一點人發神經的呀 XDDD 08/18 17:32
推 eicsarch:我想問一下 invoke(obj,obj...) obj是要傳什麼進去呢?? 08/19 15:03
→ godfat:instance. static 沒有,所以我寫 null. 08/19 15:10
推 eicsarch:那我想再問一下 我想要invoke的方法會傳一個數字陣列進去 08/19 16:27
→ eicsarch:可是傳進去的TYPE要傳什麼 我用INTEGER.TYPE應該是不行 08/19 16:29
→ godfat:int[].class 08/19 17:10
→ eicsarch:感謝fat大 目前掌握了一些動態載入的要點了 08/21 14:32