Ricevo questa nota nella build ogni volta che effettuo un'iniezione in una classe kotlin (a proposito, ho un progetto Android misto con kotlin e java).
Ad esempio, dopo questa attività graduale: compileStagingDebugJavaWithJavac
(StagingDebug è la mia variante di build), ricevo questo messaggio:
"Nota: generazione di un MembersInjector o Factory per com.packageNameXXX.CourseDiscoveryMapFragment. Preferisco invece eseguire il processore dagger su quella classe."
Il mio codice CourseDiscoveryMapFragment può essere visto qui:
class CourseDiscoveryMapFragment : Fragment(){
@Inject
lateinit var presenter: CourseDiscoveryMapPresenter
lateinit var mapView: MapView
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
val view = inflater.inflate(R.layout.fragment_discovery_map, container, false)
MapsInitializer.initialize(activity)
mapView = view.mapView
mapView.onCreate(savedInstanceState?.getBundle(BUNDLE_KEY_MAP_STATE))
(activity as BaseActivity)
.activityComponent.inject(this)
}
E il mio ActivityComponent è:
@ActivityScope
@Subcomponent(modules = ActivityModule.class)
public interface ActivityComponent {
void inject(BaseActivity baseActivity);
void inject(CourseDiscoveryMapFragment fragment);
//Exposed to sub-graphs.
Activity activity();
}
Quindi, sto avendo componenti e moduli dagger scritti in Java, mentre ho iniezioni di dagger in Kotlin.
È qualcosa di cui dovrei essere preoccupato?
Grazie.