例として、Ruby から Kafka 用の Scala/Java API にアクセスしようとすると、(require および Rjb::load の手順の後)
ProducerData = Rjb::import('kafka.javaapi.producer.ProducerData')
topic = "test"
msg = "message"
producer_data = ProducerData.new_with_sig('Ljava.lang.String;Ljava.lang.String;',topic,msg)
Kafka API では、 ProducerData メソッドは次のように定義されています。
class ProducerData[K, V](private val topic: String,
private val key: K,
private val data: java.util.List[V])
ファイルを実行した後の結果は次のとおりです。
./test-rjb.rb:30:in `new_with_sig': Constructor not found (RuntimeError)
ジェネリック型シグネチャを持つクラスに正しくアクセスするにはどうすればよいですか?