title: Cannot be provided without an @Provides-annotated method (Dagger 2 in Android Kotlin)
body: <p>searched on many sites and in various articles, but without effect, so I ask for your help with Dagger 2 (DI)</p>
  <p>I can not understand what the problem is</p>
  <p>I'm new to Dagger 2 (Di) and I'm just studying it, please help me understand</p>
  <p>My code:</p>
  <p>MainActivity.kt</p>
  <pre><code>class MainActivity : AppCompatActivity() {
  
      @Inject
      lateinit var networkService: NetworkService
  
      override fun onCreate(savedInstanceState: Bundle?) {
          super.onCreate(savedInstanceState)
  
          App().gerAppComponents().inject(mainActivity = this)
  
          setContentView(R.layout.activity_main)
  
          networkService.buildService(service = Movies::class.java).getPopularMovie(apiKey = &quot;test&quot;, language = &quot;en-US&quot;, page = 1)
  
      }
  
  }
  </code></pre>
  <p>App.kt</p>
  <pre><code>class App : Application() {
  
      fun gerAppComponents(): AppComponent {
          return DaggerAppComponent.builder().appNetworkModule(AppNetworkModule())
              .build()
      }
  }
  </code></pre>
  <p>ServiceBuild.kt</p>
  <pre><code>object ServiceBuild : NetworkService {
      private val client = OkHttpClient.Builder().build()
  
      private val retrofit: Retrofit = Retrofit.Builder()
          .baseUrl(&quot;https://api.themoviedb.org/3&quot;)
          .addConverterFactory(GsonConverterFactory.create())
          .client(client)
          .build()
  
      override fun &lt;T&gt; buildService(service: Class&lt;T&gt;): T = retrofit.create(service)
  }
  </code></pre>
  <p>NetworkService.kt</p>
  <pre><code>interface NetworkService {
      fun &lt;T&gt; buildService(service: Class&lt;T&gt;): T
  }
  </code></pre>
  <p>AppNetworkModule.kt</p>
  <pre><code>@Module
  class AppNetworkModule {
  
      @Provides
      @Singleton
      fun getRetrofitService(): ServiceBuild {
          return ServiceBuild
      }
  }
  </code></pre>
  <p>AppComponent.kt</p>
  <pre><code>@Singleton
  @Component(modules = arrayOf(AppNetworkModule::class))
  interface AppComponent {
      fun inject(mainActivity: MainActivity)
  }
  </code></pre>
  <p>Build error</p>
  <pre><code>app/build/tmp/kapt3/stubs/debug/com/rebus/client/di/components/AppComponent.java:10: error: [Dagger/MissingBinding] com.rebus.client.services.impl.NetworkService cannot be provided without an @Provides-annotated method.
      public abstract void inject(@org.jetbrains.annotations.NotNull()
                           ^
        com.rebus.client.services.impl.NetworkService is injected at
            com.rebus.client.MainActivity.networkService
        com.rebus.client.MainActivity is injected at
            com.rebus.client.di.components.AppComponent.inject(com.rebus.client.MainActivity)
  </code></pre>