kotlin 클래스에 주입 할 때마다 빌드에이 메모가 표시됩니다 (btw, kotlin과 Java가 모두 혼합 된 Android 프로젝트가 있음).
예를 들어이 gradle 작업 후에 : compileStagingDebugJavaWithJavac
(StagingDebug는 내 빌드 변형 임) 다음 메시지가 표시됩니다.
"참고 : com.packageNameXXX.CourseDiscoveryMapFragment에 대한 MembersInjector 또는 Factory 생성. 대신 해당 클래스에 대해 대거 프로세서를 실행하는 것이 좋습니다."
내 CourseDiscoveryMapFragment 코드는 여기에서 볼 수 있습니다.
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)
}
그리고 내 ActivityComponent 는 다음과 같습니다.
@ActivityScope
@Subcomponent(modules = ActivityModule.class)
public interface ActivityComponent {
void inject(BaseActivity baseActivity);
void inject(CourseDiscoveryMapFragment fragment);
//Exposed to sub-graphs.
Activity activity();
}
그래서 저는 자바로 작성된 대거 구성 요소와 모듈을 가지고 있으며 Kotlin에는 대거 주입이 있습니다.
이것이 내가 걱정해야 할 것이 있습니까?
감사합니다.
전체 오류 / 경고 및 관련 코드를 게시 할 수 있습니까?
—
marcospereira
질문에 더 자세한 정보가 필요합니다. 기본적으로 Google 쿼리를 질문으로 작성했습니다.
—
Jayson Minard
@marcospereira 재 편집! 감사!
—
Fábio Carballo 16. 01.
이봐, 당신은 해결책이나 어쩌면 그 경고에 대한 이유를 찾았습니까?
—
wojciech_maciejewski
여기에 대한 답은 다음과 같습니다 github.com/square/dagger/issues/537
—
R. Zagórski