With the recent versions of dagger 2 one of the improvements made are the possibility of having static provide methods. Simply so:
@Provides static A provide
I can't test it right now, but I think this should work:
@Module object AModule { @JvmStatic @Provides fun providesA(): A = A() }