On 13/01/2017 12:48, Sander Mak wrote:
:
Alternatively, you can view optional dependency usage more like 'if the
application already uses A, then Lib should also use A as well' in which case
your suggested setup and the current implementation make total sense. This does
make the example I described above a bit awkward, but I don't have any data on
which use case is more prevalent.
For Stephen's example then it would be better to steer people to using
services and avoid the reflection guard that Lib would need to cope with
A not being resolved.
`requires static A` does have its usages of courses, the main one is
where `module A` only exports packages containing annotations and where
those annotations may not be present at run time.
-Alan.