Empacotamento do código do manipulador Scala com sbt¶
Você pode usar a ferramenta de compilação Scala (sbt) para compilar e empacotar seu código como um assembly JAR. Você pode usar o plugin sbt-assembly para criar um arquivo JAR contendo todas as dependências.
Depois de ter um arquivo JAR, você pode carregar o arquivo em um estágio do Snowflake e, em seguida, fazer referência a ele no parâmetro IMPORTS na instrução CREATE FUNCTION ou CREATE PROCEDURE que você usa para criar a função ou o procedimento. Para obter mais informações sobre o upload de arquivos JAR, consulte Disponibilização das dependências para seus códigos. Para obter mais informações sobre como escolher se o código deve estar inline ou em um estágio, consulte Como manter o código do manipulador em linha ou em um estágio.
Para criar um arquivo assembly JAR com o código do manipulador, siga as etapas abaixo.
- No diretório que contém seu arquivo - build.sbt, no subdiretório- project/, crie um arquivo chamado- plugins.sbt.- Por exemplo, se o diretório contendo seu arquivo - build.sbtfor- hello-snowpark/, crie o arquivo- hello-snowpark/project/plugins.sbt:- hello-snowpark/ |-- build.sbt |-- project/ |-- plugins.sbt
- No arquivo - plugins.sbt, adicione a seguinte linha:- addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "1.1.0") - Isso adiciona o plugin sbt-assembly ao seu projeto. 
- 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.sbtpara resolver as dependências. Consulte Estratégia de fusão para detalhes.
- Se o seu projeto exigir a biblioteca Snowpark, faça referência a ela em seu arquivo - build.sbtcom- libraryDependencies, conforme mostrado abaixo. Certifique-se de usar pelo menos a versão mínima necessária.- Como a biblioteca do Snowpark está incluída no Snowflake, exclua-a do arquivo JAR especificando que a dependência é - "provided".- libraryDependencies += "com.snowflake" % "snowpark" % "1.1.0" % "provided" 
- 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: assemblyou- Not a valid key: assembly, certifique-se de que o arquivo- plugins.sbtesteja 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