пакет sbt: исключить файлы Python в файле JAR - PullRequest
1 голос
/ 07 октября 2019

Я хотел бы выяснить, как исключить файлы Python из файла JAR, сгенерированного командой sbt package.

В проекте Delta lake используется SBT-версия 0.13.18и файл JAR создается с sbt package.

Структура каталогов следующая:

python/
  delta/
    testing/
      utils.py
  tests/
    test_sql.py
src/
  main/
    ...scala files
build.sbt
run-tests.py

Она соответствует стандартной структуре проекта SBT с добавлением пары файлов Python.

Файлы Python включаются в файл JAR при запуске sbt package, и я хотел бы выяснить, как исключить все файлы Python.

Вот что я пытался добавить в build.sbt файл:

  1. mappings in (Compile, packageBin) ~= { _.filter(!_._1.getName.endsWith("py")) } за этот ответ
  2. excludeFilter in Compile := "*.py" за этот ответ

Ничего из этого не сработало.

1 Ответ

0 голосов
/ 07 октября 2019

Не проверял, но я думаю, что-то вроде этого, когда вы делаете толстую банку.

assemblyMergeStrategry in assembly := {
  case PathList(parts @ _*) if parts.last.endsWith(".py") => MergeStrategy.discard
  case _ => MergeStrategy.first // or whatever you currently have for your other merges
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...