I have library X with pure interfaces, libraries X1, X2, X3, ..., XN which implement interfaces from X and SpringBoot project Y built with Gradle 4 and using X
The implementation of X depends on the client we prepare build for.
Options I have in mind:
- Include all implementation as dependencies and have configuration variable which will be discovered runtime and define used implementation.
- Conditional Gradle build gradle build -Pclient=client1 which will include only one specific implementation
So which among those is best to follow? Can anyone help me with this?