在Ruby on Rails應用程式中重用Java代碼

來源:互聯網
上載者:User

開始之前

關於本教程

Ruby on Rails (Rails) 是用 Ruby 編 寫的一個 full-stack Web 應用程式架構,而 Ruby 是一種功能豐富的、免費的 、可擴充的、可移植的、物件導向的指令碼編製語言。Rails 在 Web 應用程式開 發人員之間非常流行。通過它,可以快速有效地開發 Web 應用程式,並將其部 署到任何 Web 容器中,例如 IBM® WebSphere® 或 Apache Tomcat。

在 Rails 和類似的 Web 應用程式開發架構出現之前,用於 Web 應用程式開 發的標準工具是 Java 語言,因為 Java 語言是獨立於平台的,並且有完整的 API 集。很多 Java Web 應用程式仍然在運行,這導致很多非常有用的、編寫良 好的 Java 代碼(在本教程中統稱遺留 代碼)具有良好的可用性。遺留 Java 代碼通常被打包在一組 JAR 檔案。

如果將 Web 應用程式開發平台改為 Rails,那麼可以重用遺留 Java 代碼。 Ruby Java Bridge (RJB) 是一個工具包,通過它可以將 JAR 檔案裝載到 Rails 應用程式中,還可以在 Rail 應用程式中訪問其中的方法和變數。本教程解釋如 何在 Rails 應用程式中配置和使用 RJB。

目標

在本教程中,您 將學習如何:

下載、編譯和安裝 RJB

設定 RJB 以訪問共用 Java 庫

將遺留 Java 代碼裝載到 Rails 應用程式中並進行訪問

本教 程並不深入研究 Rails 的功能。與其他 Web 架構相比,Rails 有很多優點,其 中一個優點就是用於該平台的文檔的數量和品質都很高。

先決條件

本教程假設讀者基本熟悉 Java 語言、Ruby 和 Ruby on Rails。

系統需求

本教程假設您使用 Linux® 系統(但是,在 Windows® 上的步驟基本上是相同的)。本教程假設您有一個可以工作的 Ruby on Rails。

RJB 要求系統上安裝有 Java SDK。如果需要一個 Java SDK,可以針對您的平台下載最新的 Java SE SDK,並馬上安裝它。

RJB 安裝和設定

本節帶您親曆 RJB 的下載、安裝、編譯和設定。

下 載 RJB

可以下載標準 Ruby Gem 包或自己編譯的原始碼歸檔檔案形式的 RJB。為了進行示範,我推薦下載原始碼歸檔檔案,所以我將使用這種方法。閑 話少說,現在就 下載 RJB 1.1.3 source .zip 檔案(在撰寫本教程之際,已經 有了最新的 RJB 版本)。

確保設定或更新了以下環境變數,它們是安裝 RJB 所必需的:

JAVA_HOME 必須指向 Java SDK 安裝目錄。

PATH 必須包括 $JAVA_HOME/bin。

例如,在 bash(僅用於 Linux 系統)中,假設已經將 Java SDK 安裝到 /usr/local/jdk60,則執行以 下命令:

[root@san]# export  JAVA_HOME=/usr/local/jdk60

[root@san]# export  PATH=$PATH:$JAVA_HOME/bin

編譯和安裝 RJB

下一步是通 過執行以下命令編譯和安裝 RJB:

[root@san]# unzip rjb- 1.1.3.zip

[root@san]# cd rjb-1.1.3

[root@san]#  ruby setup.rb config

[root@san]# ruby setup.rb  setup

[root@san]# ruby setup.rb install

確 認安裝成功

為了確認 RJB 安裝成功,首先調用 Ruby 的互動式控制台 irb:

[root@san]# irb

然後輸入 require 'rjb':

irb(main):001:0> require  'rjb'

=> true

irb(main):002:0>exit 

如果 require 'rjb' 命令返回 true,則意味著 Ruby 安裝識別 出新安裝的 rjb 庫。現在可以在應用程式中開始使用 RJB。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.