Empacotamento do código do manipulador Scala com SBT

Se você estiver usando SBT para construir e empacotar seu código, você pode usar o plugin sbt-assembly para criar um arquivo JAR contendo todas as dependências.

  1. No diretório que contém seu arquivo build.sbt, crie um arquivo chamado plugins.sbt no subdiretório project/.

    Por exemplo, se o diretório contendo seu arquivo build.sbt for hello-snowpark/, crie o arquivo hello-snowpark/project/plugins.sbt:

    hello-snowpark/
                 |__ build.sbt
                 |__ project/
                           |__plugins.sbt
    
  2. No arquivo plugins.sbt, adicione a seguinte linha:

    addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "1.1.0")
    
  3. Se seu projeto requer várias versões da mesma biblioteca (por exemplo, se o seu projeto depende de duas bibliotecas que exigem versões diferentes de uma terceira biblioteca), defina uma estratégia de fusão em seu arquivo build.sbt para resolver as dependências. Consulte Estratégia de fusão para detalhes.

  4. Em seu arquivo build.sbt, atualize a versão da biblioteca Snowpark para, pelo menos, a versão mínima exigida.

    libraryDependencies += "com.snowflake" % "snowpark" % "1.1.0" % "provided"
    

    Além disso, exclua a biblioteca Snowpark do arquivo JAR especificando que a dependência é "provided" (como mostrado acima).

  5. Mude para o diretório do seu projeto (por exemplo, hello-snowpark) e execute o seguinte comando:

    sbt assembly
    

    Nota

    Se você encontrar o erro Not a valid command: assembly, Not a valid project ID: assembly ou Not a valid key: assembly, certifique-se de que o arquivo plugins.sbt esteja no subdiretório chamado project/ (como mencionado na etapa 1).

    Esse comando cria um arquivo JAR no seguinte local:

    target/scala-<version>/<project-name>-assembly-1.0.jar