Empaquetage du code du gestionnaire Scala avec SBT

Si vous utilisez SBT pour construire et empaqueter votre code, vous pouvez utiliser le plugin sbt-assembly pour créer un fichier JAR contenant toutes les dépendances.

  1. Dans le répertoire contenant votre fichier build.sbt créez un fichier nommé plugins.sbt dans le sous-répertoire project/.

    Par exemple, si le répertoire contenant votre fichier build.sbt est hello-snowpark/, créez le fichier hello-snowpark/project/plugins.sbt :

    hello-snowpark/
                 |__ build.sbt
                 |__ project/
                           |__plugins.sbt
    
    Copy
  2. Dans le fichier plugins.sbt ajoutez la ligne suivante :

    addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "1.1.0")
    
    Copy
  3. Si votre projet nécessite plusieurs versions de la même bibliothèque (par exemple, si votre projet dépend de deux bibliothèques qui nécessitent des versions différentes d’une troisième bibliothèque), définissez une stratégie de fusion dans votre fichier build.sbt pour résoudre les dépendances. Voir Stratégie de fusion pour plus de détails.

  4. Dans votre fichier build.sbt mettez à jour la version de la bibliothèque Snowpark au minimum vers la version minimale requise.

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

    De plus, excluez la bibliothèque Snowpark du fichier JAR en spécifiant que la dépendance est "provided" (comme indiqué ci-dessus).

  5. Accédez au répertoire de votre projet (par exemple hello-snowpark) et exécutez la commande suivante :

    sbt assembly
    
    Copy

    Note

    Si vous rencontrez l’erreur Not a valid command: assembly, Not a valid project ID: assembly ou Not a valid key: assembly, assurez-vous que le fichier plugins.sbt se trouve dans le sous-répertoire project/ (comme indiqué à l’étape 1).

    Cette commande crée un fichier JAR à l’emplacement suivant :

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