Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

458
Vistas
Inyección de dependencia de empuñadura en proyecto de varios módulos

Tengo dos módulos en mi aplicación de Android, app y data . el módulo data contiene una dependencia de actualización y el módulo de la app depende del módulo de data .

aplicación/construir.gradle:

 implementation project(':data') implementation "com.google.dagger:hilt-android:$hilt_version" kapt "com.google.dagger:hilt-android-compiler:$hilt_version"

datos/construir.gradle:

 implementation "com.google.dagger:hilt-android:$hilt_version" kapt "com.google.dagger:hilt-android-compiler:$hilt_version" implementation "com.squareup.retrofit2:retrofit:$retrofit_version" implementation "com.squareup.retrofit2:converter-moshi:$retrofit_version"

En el módulo data , tengo el siguiente módulo Hilt:

 @Module @InstallIn(SingletonComponent::class) internal object DataModule { @Singleton @Provides fun provideRetrofit(): Retrofit { return Retrofit.Builder() .baseUrl(Constants.API_BASE_URL) .addConverterFactory(MoshiConverterFactory.create()) .build() } @Singleton @Provides fun provideLoginApiService(retrofit: Retrofit): LoginApiService { return retrofit.create(LoginApiService::class.java) } @Singleton @Provides fun provideLoginRepository(loginRepository: LoginRepositoryImpl): LoginRepository { return loginRepository } }

Aquí, LoginApiService y LoginRepositoryImpl son internos en el módulo de data y LoginRepository es público (en el módulo de data ):

 @Singleton internal class LoginRepositoryImpl @Inject constructor( private val loginApiService: LoginApiService ) : LoginRepository { // ... }

Ahora, cuando intento construir el proyecto, aparece el siguiente error:

 DaggerMyApplication_HiltComponents_SingletonC.java:41: error: package retrofit2 does not exist import retrofit2.Retrofit;

El error desaparece si agrego una dependencia de actualización en el módulo de mi app que no quiero hacer.

¿Qué sucede aquí y cómo puedo resolver este error sin agregar dependencias del módulo de data en el módulo de la app ?

over 4 years ago · Santiago Trujillo
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda