У меня многомодульный проект, который в основном с открытым исходным кодом, но имеет один модуль (компилятор), который является проприетарным, поэтому его папку src / main / java необходимо удалить перед выпуском. Запатентованные модули создают запутанный jar, который используется другими модулями, которым необходимо вызывать компилятор из исходного jar для сборки всего остального в релизе. Одним из них является mojo, который используется для компиляции остальной части системы. Поэтому после удаления проприетарных источников мне нужно запустить работающий mojo, чтобы пользователи могли компилировать непатентованные части системы, используя только двоичные запутанные jar-файлы компилятора.
Назовите проприетарный модуль "compiler" и запутанный jar, который он создает, "compiler.jar". Я думаю, что мне нужен другой модуль, "compiler-bin", с "compiler.jar" в качестве зависимости, который добавляет compiler.jar в репозиторий с новым именем, "compiler-bin.jar", затем меняет все (mojo, и т.д.) зависеть от compiler-bin.jar вместо compiler.jar. Затем распределите, клонируя все дерево, вручную удалите исходный модуль компилятора, отрегулируйте вручную помпы, чтобы исправить поломку, и ...; это будет немало работы.
Я надеюсь на что-то более автоматическое, которое получит новую копию исходного дерева (со всеми источниками), чтобы создать дерево для распространения (за исключением собственных источников), которое можно построить без дальнейшей ручной подстройки.