2009-07-23 17 views
10

Tôi đang xem xét sự khác nhau giữa JRuby trên Rails và Ruby on Rails ban đầu cho sản phẩm của tôi là gì?JRuby có thể sử dụng đá quý Ruby nguyên bản không?

Sự khác biệt trong hoạt động phát triển, triển khai, hỗ trợ giữa bản gốc hoặc khả năng mở rộng của nó như thế nào?

Tôi đã đọc nhiều bài viết. Họ nói JRuby là chức năng tương tự như Ruby. Nó có nghĩa là chúng ta có thể sử dụng Ruby gem cho JRuby, sử dụng scaffold và ActiveRecord như Ruby, và chúng ta cũng có thể triển khai sản phẩm như Java?

Trả lời

0

Hầu hết, nhưng không phải tất cả, đá quý Ruby cũng có sẵn cho JRuby. Giàn giáo và ActiveRecord chắc chắn có thể được sử dụng với JRuby. Bạn sẽ không tìm thấy bất kỳ chức năng RoR nào bị thiếu trong JRuby on Rails.

Với JRuby, bạn có thể triển khai ứng dụng của mình dưới dạng tiêu chuẩn WAR. Nếu bạn không biết chắc chắn nếu bạn muốn sử dụng Ruby hoặc JRuby bản địa, tôi khuyên bạn nên sử dụng Netbeans IDE. Với nó, bạn có thể dễ dàng chuyển đổi từ native Ruby sang JRuby cho các ứng dụng Rails.

0

JRuby là một triển khai đầy đủ của Ruby, chúng giống nhau nhưng JRuby chạy trên JVM. Nó có quy mô rất tốt vì bạn có thể triển khai nó bên trong một máy chủ ứng dụng như Glassfish hoặc JBoss.

Bạn có thể sử dụng Rails tất nhiên, chỉ có một cấu hình để thực hiện, bộ điều hợp cơ sở dữ liệu. Bạn phải cài đặt bộ chuyển đổi JDBC cho ActiveRecord, ví dụ:

gem install activerecord-jdbcmysql-adapter 

và trong database.yml của bạn

adapter: jdbcmysql 

và bạn đã hoàn tất!

chỉnh sửa:

nếu bạn quan tâm có một sự so sánh giữa hiện thực của Ruby khác nhau, http://www.infoq.com/presentations/seifer-ruby-vm-comparison và JRuby là một trong những thực hiện tốt nhất.

7

Chỉ đá quý được viết hoàn toàn bằng Ruby sẽ hoạt động dưới JRuby. Đá quý như RMagick hoặc MySQL hoặc (việc triển khai chuẩn) JSON yêu cầu phần mở rộng C sẽ khiến bạn không may mắn trong một số trường hợp và với các lựa chọn thay thế như đá quý JDBC MySQL và JSON-JRuby trong các trường hợp khác.

3

Xem câu trả lời của tôi here

Ngoài ra, đây là một tài liệu tham khảo có ích: Is It JRuby

+3

Trang web đó không còn tồn tại nữa. –

0

Bạn không cần phải cài đặt lại tất cả các đá quý của bạn cho JRuby. Tất cả những gì bạn phải làm là đặt biến môi trường GEM_HOME thành đường dẫn với đá quý của bạn. Cũng xin lưu ý rằng JRuby không hỗ trợ tiện ích mở rộng gốc. Vì vậy, bạn sẽ phải tìm thay thế tương thích JRuby cho đá quý sử dụng phần mở rộng bản địa.

0

Bạn có thể đọc JRuby description

có một số văn bản về đá quý ruby ​​và làm thế nào đám mây JRuby sử dụng chúng:

Nhiều Gems sẽ hoạt động tốt trong JRuby; tuy nhiên, một số Gems xây dựng các thư viện C nguyên gốc như là một phần của quá trình cài đặt của chúng. Những Gems sẽ không làm việc trong JRuby trừ khi Gem cũng đã cung cấp một Java tương đương với thư viện bản địa.

Các vấn đề liên quan