I'm using LGPL binaries, as well as EPL binaries for my open source project. Is this OK?
And if yes, does that mean I should license my project under LGPL? The binaries are being used as dependencies for the project i.e. I'm just using them as-is without making changes to them.
No: this is common for Java-based project to depend and re-use as-is pre-built packages (typically provisioned through Maven) that are under the EPL or the LGPL. The EPL or LGPL does not extend to your own code in this case.
And if you redistribute these dependencies, as long as you are respecting the terms of the licenses of these deps, this typically does not impact the license you can use in your own code.
The simple way to respect the terms would be to do this for each dep:
- include all licenses and notices (or create them if they are missing), include some doc to give credit and display these licenses and notices.
- provide the corresponding source code for these deps
This may be more than needed in some cases (for instance unmodified redistribution of EPL-licensed code does not require exactly source code redistribution) but this is simple and easier to apply (and automate) and ensure a decent compliance across the board.
You could also apply the same approach to other packages.