Use os módulos Dagger sem a diretiva “injeta”

Eu estou tentando fazer o Dagger funcionar sem a diretiva "injects" dentro da anotação @Module. Eu estou baseando meu projeto de teste noExemplo do Android Simple Dagger

Esta é a parte que está me dando problemas:

@Module(
    injects = HomeActivity.class,
    complete = false
)
public class DemoModule {
  // TODO put your application-specific providers here!
}

(Edit): Qual no meu código éCTXModules.java

A parte que eu gostaria de remover é a "injects = HomeActivity.class". Eu sei que posso marcar meus próprios módulos com a anotação @Inject no construtor para remover essa parte, mas de alguma forma não funciona com o módulo que é adicionado ao gráfico. Com essa linha, tudo funciona bem.

A razão pela qual eu preciso disso é porque o dagger será implementado em um projeto de biblioteca base que será a base para alguns projetos que compartilham uma base de código comum e, portanto, no momento ou escrevendo esta parte do código eu não sei o que classes irão injetar módulos.

O que estou tentando fazer é possível?

Eu suponho que é possível porque oClasse do módulo Android não usa essa diretiva.

Espero que esteja claro o suficiente. Desde já, obrigado!

(EDITAR)

Eu deveria ter mencionado isso. No meu módulo eu removo "injects = HomeActivity.class" e adiciono "library = true" como noClasse do módulo Android. O que acontece então é que eu recebo este erro (meu mal não o adicionei antes):

12-10 09:21:16.807: E/AndroidRuntime(21783): FATAL EXCEPTION: main
12-10 09:21:16.807: E/AndroidRuntime(21783): Process: com.ef.daggertestproject, PID: 21783
12-10 09:21:16.807: E/AndroidRuntime(21783): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ef.daggertestproject/com.ef.daggertestproject.MainActivity}: java.lang.IllegalArgumentException: No inject registered for members/com.ef.daggertestproject.MainActivity. You must explicitly add it to the 'injects' option in one of your modules.
12-10 09:21:16.807: E/AndroidRuntime(21783):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2176)
12-10 09:21:16.807: E/AndroidRuntime(21783):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2226)
12-10 09:21:16.807: E/AndroidRuntime(21783):    at android.app.ActivityThread.access$700(ActivityThread.java:135)
12-10 09:21:16.807: E/AndroidRuntime(21783):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1397)
12-10 09:21:16.807: E/AndroidRuntime(21783):    at android.os.Handler.dispatchMessage(Handler.java:102)
12-10 09:21:16.807: E/AndroidRuntime(21783):    at android.os.Looper.loop(Looper.java:137)
12-10 09:21:16.807: E/AndroidRuntime(21783):    at android.app.ActivityThread.main(ActivityThread.java:4998)
12-10 09:21:16.807: E/AndroidRuntime(21783):    at java.lang.reflect.Method.invokeNative(Native Method)
12-10 09:21:16.807: E/AndroidRuntime(21783):    at java.lang.reflect.Method.invoke(Method.java:515)
12-10 09:21:16.807: E/AndroidRuntime(21783):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:777)
12-10 09:21:16.807: E/AndroidRuntime(21783):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:593)
12-10 09:21:16.807: E/AndroidRuntime(21783):    at dalvik.system.NativeStart.main(Native Method)
12-10 09:21:16.807: E/AndroidRuntime(21783): Caused by: java.lang.IllegalArgumentException: No inject registered for members/com.ef.daggertestproject.MainActivity. You must explicitly add it to the 'injects' option in one of your modules.
12-10 09:21:16.807: E/AndroidRuntime(21783):    at dagger.ObjectGraph$DaggerObjectGraph.getInjectableTypeBinding(ObjectGraph.java:281)
12-10 09:21:16.807: E/AndroidRuntime(21783):    at dagger.ObjectGraph$DaggerObjectGraph.inject(ObjectGraph.java:258)
12-10 09:21:16.807: E/AndroidRuntime(21783):    at com.ef.daggertestproject.MyApplication.inject(MyApplication.java:47)
12-10 09:21:16.807: E/AndroidRuntime(21783):    at com.ef.daggertestproject.BaseActivity.onCreate(BaseActivity.java:27)
12-10 09:21:16.807: E/AndroidRuntime(21783):    at com.ef.daggertestproject.MainActivity.onCreate(MainActivity.java:16)
12-10 09:21:16.807: E/AndroidRuntime(21783):    at android.app.Activity.performCreate(Activity.java:5243)
12-10 09:21:16.807: E/AndroidRuntime(21783):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
12-10 09:21:16.807: E/AndroidRuntime(21783):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2140)
12-10 09:21:16.807: E/AndroidRuntime(21783):    ... 11 more

Além disso, fiz o uploadmeu projeto de teste para o github

(Final Edit) de acordo com a resposta de Jake: "Declarar um módulo como uma biblioteca não alivia as necessidades do Dagger para saber sobre pontos de injeção." E, portanto, a resposta à minha pergunta inicial é que não é possível.

questionAnswers(1)

yourAnswerToTheQuestion