RubyでGUIアプリを作るならJRuby+JavaFX+Rawrで決まり! Ruby大好きな私としては、一般配布するGUIアプリケーションとかもRubyで書きたい訳です。しかし、Windowsには標準でRubyは入っていないし、Macもバージョンが古い1.8.7が標準だしで、普段プログラミングなんかしない一般ユーザーさんでも簡単に起動できるアプリケーションを作るのがなかなか難しいという問題があります。 そういった問題から、クロスプラットフォームな言語・ライブラリ、例えばC++のQtなんかに一時期浮気したりもしたのですが、やっぱりRubyで書きたい。だってRubyが好きだから。 そして、色々調べまくった結果、はい、ついに「これだ!」と思えるRubyによるGUIアプリケーション開発環境を揃えることができました。それは… JRuby JavaFX jrubyfx Rawr この組み合わせです…
こんにちは。Web Game事業統括本部 データ基盤チームの lan です。 Advent Calendar 3日目の今日は、Hadoopの上に乗るデータウェアハウスであるApache Hiveについて、話をさせて頂きたいと思います。グリーでは、Hadoopをレポーティングや大規模バッチ処理などに使っています。現在は、Apache Hive 0.12.0版を導入しております。OSSコミュニティから最新の成果をできるだけ早く取り込んでいきたいと考えているからです。 レポートなどのために社内用のUDFライブラリも作っています。しかし、それでもサポートしにくいシーンがまだまだあります。そのために、小さな小さなハッキングをして、HQL内にRubyスクリプティングを利用できる機能を開発しました。RedisのLuaスクリプティングのようなものをイメージするとわかりやすいかもしれません。 今回紹介するの
2019-03-28 Python/インスタンス生成 2018-01-02 Python/クロージャ Pythonを読む 2018-01-01 Python/メソッド呼び出し 2017-12-31 Python/build_class後編 2017-12-30 Python/読解対象とするPythonコードと解析方法 2017-12-24 Python/build_class前編(というよりPyTypeObject) 2017-12-07 Python/ビルトインがビルトインされるまで 2017-12-03 Python/C関数実行とPyObject 2017-10-22 Django/テンプレートシステムを読む(レンダリング) Djangoを読む 2017-10-21 Django/テンプレートシステムを読む(テンプレートのパース) 2017-09-24 Django/テンプレートシステ
最近iOSアプリ界隈ではRubyMotionやMobiRubyが盛り上がってきてますが、AndroidでもRubotoをつかえば簡単にrubyで開発することができるようになります。 そもそもjavaで実装された処理系であれば大抵javaクラスの呼びだしは簡単にできるようになっているので、jrubyやjythonでandroidアプリを開発することは以前から可能でした。 しかし、以下のような問題があって実際にやるとなるとそれなりに面倒なものでした。 jrubyやjythonをdalvikvm用バイナリ(dex)にコンパイルするのに時間がかかる1 androidのjavaでは使えない機能を使って処理系を実装してある場合があるので、何らかの方法で回避する必要がある スクリプトのソースファイルの配置やパスの設定を自分でやる必要があり、パッケージングが面倒 アプリのフットプリントが大きくなる2 Ru
JRubyをやっていて文字コードの扱いがCRubyと異なるんです。 サンプルを載せてみました。 以下のバージョンで試しています。 Ruby 1.9.3p194 JRuby1.7.0.RC2 JRubyとCRubyでのエンコード扱いの違い # coding: utf-8 puts DATA.read.encoding __END__ 日本語です。 これを実行すると、CRubyとJRubyで結果が異なります。 Windows上で実行すると、 CRuby : "UTF-8" JRuby : "WINDOWS-31J" JRubyの場合、どうやらプラットフォームのエンコードに依存してしまうみたいです。 これは、Javaのエンコードがプラットフォーム依存で、Javaとの相互互換のためにこのような仕様になっていると思われます。(たぶん。。) "UTF-8"のデータを扱っているんであれば、DATAも素直
Ruby support can be added to any modern Android application by adding JRuby as a dependency. The Ruboto project aims to add some additional sample code to make the integration between Java, Ruby, and the Android platform a pleasant developer experience. The Apps created thereafter depend on JRuby (jruby-jars) at runtime to provide full access to Android's Java APIs. Installation is straight-forwar
JRubyでコード書いてるとrspecを起動するたびに永遠にも等しい待ち時間が苦痛で苦痛で苦痛で。 素のrspecで5.6秒、rspecを実行するようにRakefileを書いた rake test で9.4秒、bundle exec rake test に至っては19.7秒という永遠にも等しい時間を必要とする。こうなると生きるのがつらくなってくる。 で、調べてたらsporkなるものがあるらしいんだけど試してみてもなんかいまいちうまくいかない。(うまく動いた、末尾の追記参照) んでさらに調べてたら、そもそもjvmの起動コストについてはNailgunという仕組みをつかってパスできるっぽい。世の中のRailsアプリだとRailsまわりのライブラリのロードがさらに辛いらしいが、まあそこは今の自分には関係ないのでパス。jvm起動コストだけなんとかなればいいや。 ということで、簡単。以下のようにする。
まず、DBIなどのライブラリをインストールする。 $ jruby -S gem install dbi dbd-jdbc jdbc-mysql こんなスクリプト書いてみる。 require 'dbi' require 'dbd/Jdbc' require 'jdbc/mysql' Jdbc::MySQL.load_driver DBI.connect( 'DBI:Jdbc:mysql://localhost/test', 'root', 'test', 'driver' => 'com.mysql.jdbc.Driver' ) do |dbh| puts "Connected" end 5行目の "Jdbc::MySQL.load_driver" がないと怒られるので注意。 $ jruby connect.rb DBI::DatabaseError: java.lang.ClassNotF
This document compares approaches for deploying JRuby applications: - Warbler packages applications into WAR files that can be deployed to Tomcat/Jetty servers. Trinidad and TorqueBox embed web servers directly into the JRuby application for deployment. - Trinidad and TorqueBox provide clustering, background job scheduling, and other features out of the box. Warbler applications require additional
昨年から細々と続けている社内勉強会の60分一本勝負で、(デブサミで川口さんとnahiさんからいろいろ聞いてきた)hsbtにJenkinsプラグインをJRubyで書く方法について教えてもらいました。 私はそもそもJavaが入ってなかったので次のような感じでいろいろ入れるところからスタート。 最後に入れているjpiがJRubyでJenkins Pluginを作るためのgemだそうな。 手順としては、 jpi new hogehgoeで雛形を生成 jpi generate hogehoge fugafugaとしてできたファイルを編集 jpi buildでパッケージング jpi serverで作ったプラグインが入ったJenkinsが起動 という感じで、generate hogehogeがけっこう肝な感じでした。 Generatorは、いまのところ次の6つがあるんですが、後半はhsbtもよくわからな
原文: チャールズ=オリバー=ナター JRubyはRuby言語の実装の中では一際起動が遅い事で悪名高くなってしまいました。一部は、JITの生成品がなくてブートストラップして動き出すまでに時間がかかってしまうJVMを使っているせいです。起動の際のボトルネックが報告されて原因が解明されればそれを除く努力を我々はしていますが、JRuby自体にも問題があります。起動の問題は、実は簡単な設定問題である事もしばしばです。JRubyの起動を早くするコツを幾つか見ていきましょう。 注意。JRuby自体の起動は、他のJVM言語に較べると結構いい線いっていますが、MatzのRuby(一般的には最も速い実装とは言えない)の起動は素晴らしく早いです。 クライアント用のJVMを使う これが何と言っても一番手っ取り早い方法です。OpenJDKとSunのJDKを動かしているJVMであるHotSpotには、「クライアント
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert Here is a list of sites and projects using JRuby. Please add descriptions if possible. Use this structure as a guide (but feel free to omit or add information
最近のバージョンから勝手にnailgunが起動するようになってた。 ~/.rvm/hooks/after_use_jruby でnailgun起動してJRUBY_OPTSに-ng追加してるのをコメントアウトで止めたら解決した。 #!/usr/bin/env bash . "${rvm_path}/scripts/functions/hooks/jruby" if [[ "${rvm_ruby_string}" =~ "jruby" ]] then # jruby_ngserver_start # jruby_options_append "--ng" "${PROJECT_JRUBY_OPTS[@]}" else # jruby_options_remove "--ng" "${PROJECT_JRUBY_OPTS[@]}" jruby_clean_project_options fi J
Latest News or Comments Rawr now has a spiffy site and a logo! We're a real open source project now. Rawr reaches 1.0! Ruby files are compiled, the config file is no longer a YAML file, but a Ruby file. .exe and .app generation are much more mature now. Introduction Rawr, a packaging and deployment tool, is all you'll ever need for your JRuby projects. With Rawr, a simple, pre-generated configurat
7. Rubyツアー 1/8: クラス定義 public class Circle extends Shape { class Circle < Shape private final int radius; def initialize(radius) public Circle(int radius) { @radius = radius this.radius = radius; end } attr_reader :radius public int getRadius() { def area return radius; Math::PI * (@radius ** 2) } end public double getArea() { end return Math.PI * Math.pow(radius, 2); puts Circle.new(2).area } publ
Java仮想マシンで動作するRuby「JRuby」はJavaがもっているさまざまな利点を利用できる興味深いプロダクトだが、Javaの欠点もそのまま引き継いでいる。もっとも顕著なのは起動時間が遅いことだ。これはLinuxなどでは特に気になる。一度起動が完了しJITが有効になったあとのJRubyは優れた速度を出すが、起動は遅い。小さいツールを作って利用するようなケースはJRubyは苦手ということになり、「起動が遅い」という悪名高い評判を得ることになる。 JRubyの主要開発者であるCharles Nutter氏がHeadius: JRuby Startup Time TipsにおいてJRubyの起動を高速化するための7つのテクニックを紹介している。いくつかはJRubyに特有のものだが、それ以外はJavaで動作するアプリケーションに普遍的に適用できる内容になっている。紹介されている起動高速化テク
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く