sql语句中的错误:noclassdeffounderror:com/macasaet/fernet/validator

ou6hu8tu  于 2021-06-29  发布在  Java
关注(0)|答案(0)|浏览(213)

目前正在将下面的代码转换为“jar”,以便在databricks集群中注册永久的udf。面临noclassdeffounderror这样的问题,但我在使用sbt构建jar时添加了必需的库依赖项。源代码:https://databricks.com/notebooks/enforcing-column-level-encryption.html
在build.sbt中使用
scalaversion:=“2.13.4”
librarydependencies+=“org.apache.hive”%“配置单元执行”%“0.13.1”
librarydependencies+=“com.macasaet.fernet”%“fernet-java8”%“1.5.0”
如果上面有任何错误,请指导我正确的图书馆。
请帮帮我,

import com.macasaet.fernet.{Key, StringValidator, Token}
import org.apache.hadoop.hive.ql.exec.UDF;

class Validator extends StringValidator {

  override def getTimeToLive() : java.time.temporal.TemporalAmount = {
    Duration.ofSeconds(Instant.MAX.getEpochSecond());
  }
}

class udfDecrypt extends UDF {

  def evaluate(inputVal: String, sparkKey : String): String = {

    if( inputVal != null && inputVal!="" ) {
      val keys: Key = new Key(sparkKey)
      val token = Token.fromString(inputVal)
      val validator = new Validator() {}
      val payload = token.validateAndDecrypt(keys, validator)
      payload
    } else return inputVal
  }
}

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题