Каждая задача объявляет другие задачи и параметры, которые она использует.Вы можете использовать inspect
для определения этих входных данных, как описано в Проверка настроек и в недавнем посте в блоге Джона Ченга .
соответствующая задача, используемая packageBin
, равна mappings
.Задача mappings
собирает файлы для включения в банку и сопоставляет их с путем в банке.Некоторый фон объясняется в Файлы сопоставления , но в результате mappings
выдает значение типа Seq[(File, String)]
.Здесь File - это входной файл, предоставляющий содержимое, а String - путь в jar.
Итак, чтобы изменить сопоставления для задачи packageBin
, отфильтруйте пути из сопоставлений по умолчанию, которые вы используете.не нужно включать:
mappings in (Compile,packageBin) ~= { (ms: Seq[(File, String)]) =>
ms filter { case (file, toPath) =>
toPath != "javax/servlet/Servlet.class"
}
}
mappings in (Compile,packageBin)
выбирает сопоставления для основной задачи пакета (в отличие от источников тестирования или задачи packageSrc).
x ~= f
означает "установить x в результате применения функции f к предыдущему значению x ".(Подробнее см. Подробнее о настройках .)
Фильтр отбрасывает все пары, где путь соответствует классу сервлета.