If your concern is code health, a compile-time dependency works great.
If your concern is resource management, then you need a runtime dependency.