使用JRuby為你的客戶端助力
預(yù)言了兩天,終于決定在我們的RCP客戶端中增加執(zhí)行JRuby的功能。說是預(yù)言其實(shí)也沒有什么好預(yù)言的,JRuby早有耳聞,Ruby也一直在學(xué)習(xí)。其實(shí)要解決的問題只有一個(gè)---解決Java實(shí)例如何給JRuby,然后有JRuby操作,其實(shí)不難,JRbuy官方的WIKI上有一個(gè)例子,但是那個(gè)例子有太多硬編碼的問題,稍稍改造,將硬編碼的內(nèi)容抽取到JRuby中,就好了~
我想說的其實(shí)是在RCP中加入JRuby的作用是:
實(shí)施人員只需要寫腳本就可以隨意操作界面上的任意東西;
使產(chǎn)品更進(jìn)一步達(dá)到零二次開發(fā)的階段;
使用JRuby來開發(fā)SWT的界面,還是有比較復(fù)雜,在熟悉SWT開發(fā)和JRuby的情況下畫一個(gè)比較復(fù)雜的界面時(shí)候就會(huì)非常復(fù)雜!這里還是建議使用類似于XSWT等XML界面描述語言,然后配合腳本完成功能。
下面給出一個(gè)可以在運(yùn)行JRuby的SWTShell:
package com.glnpu.jruby; import java.util.ArrayList; import org.eclipse.swt.SWT; public class RunJRUBY extends Shell { private RunJRUBY run; /** /** text = new Text(this, SWT.V_SCROLL | SWT.BORDER | SWT.WRAP | SWT.H_SCROLL); final Button button = new Button(this, SWT.NONE); @Override } |
下面是可以執(zhí)行的JRuby代碼:
require 'java' |
在JRuby代碼的最下面有一個(gè)TestMain的類,主要是用于調(diào)用的~這一點(diǎn)是和其他的寫法不同的!
至于它有多強(qiáng)大,就看大家怎么用了~而且java和JRuby是運(yùn)行在同一個(gè)JVM之上的,它可以使用此JVM下的所有對象!
客戶虐我千百遍,我待客戶如初戀!
posted on 2008-03-07 09:20 阿南 閱讀(1297) 評論(4) 編輯 收藏 所屬分類: 個(gè)人原創(chuàng)