我需要写Scala中的一个函数,返回AvroOutputStream serializated字节数组,但斯卡拉我不能让类的通用对象我传递的投入。 这里是我的Util类:
class AvroUtils {
def createByteArray[T](obj: T): Array[Byte] = {
val byteArrayStream = new ByteArrayOutputStream()
val output = AvroOutputStream.binary[T](byteArrayStream)
output.write(obj)
output.close()
byteArrayStream.toByteArray()
}
}
正如你可以看到,如果TOU测试此代码是AvroOutputStream无法识别的T舱,因此它不能为它生成的模式。 希望能帮到你! 谢谢
PS:有TypeTag和ClassTag已经尝试过,没有什么工作。