Gradle 没有将 类 生成的 Dagger 2 添加到 aar
Gradle is not adding Dagger 2 generated classes to aar
我是 Whosebug 的新手,如果我的问题没有得到很好的解释,我很抱歉。
我当前的项目有下一个结构
core Library
| |
Library 1 Library 2
| |
applications applications
核心库是一个包含其他 2 个库的通用功能的库。
在这种情况下,核心库、库 1 和 2 使用 Dagger 2 的依赖注入,它们每个都创建自己的依赖图。所以他们每个人都有自己的组件接口、模块和 Dagger 2 生成的 classes。而且他们都有@Inject注解来获取他们需要的对象实例。
核心库使用 2 classes 与其他库建立连接。构建依赖关系图的初始化器 class 和发布器 class 具有获取方法的方法 return 所需的对象实例。
我想要完成的是制作 3 个 aar 文件,每个库一个。库 1 和 2 使用核心库 aar。应用程序从工件存储库中获取库 1 和 2。
我目前的问题是,在 3 个 aar 文件中的任何一个都是 Dagger 2 生成的 classes。我不确定为什么。所有 classes 都是在我构建项目时生成的,但编译的 classes 不在 aar 文件中。
我正在使用:
apt 'com.google.dagger:dagger-compiler:2.5'
compile 'com.google.dagger:dagger:2.5'
provided 'javax.annotation:jsr250-api:1.0'
gradle-2.14.1
这是我的发布者的示例:
public class Publisher {
@Inject
ReceiversManager receiversManager;
@Inject
NetworkManager networkManager;
@Inject
HttpRequestManager httpRequestManager;
public ReceiversManager getReceiversManager(){
return receiversManager;
}
public NetworkManager getNetworkManager() {
return networkManager;
}
public HttpRequestManager getHttpRequestManager() {
return httpRequestManager;
}
public Publisher(){
Initializer.getComponent().inject(this);
}
}
我用这个脚本解决了问题https://github.com/adwiv/android-fat-aar
该脚本有助于创建包含依赖项的 aar,这在许多情况下都非常方便。
我是 Whosebug 的新手,如果我的问题没有得到很好的解释,我很抱歉。
我当前的项目有下一个结构
core Library
| |
Library 1 Library 2
| |
applications applications
核心库是一个包含其他 2 个库的通用功能的库。
在这种情况下,核心库、库 1 和 2 使用 Dagger 2 的依赖注入,它们每个都创建自己的依赖图。所以他们每个人都有自己的组件接口、模块和 Dagger 2 生成的 classes。而且他们都有@Inject注解来获取他们需要的对象实例。
核心库使用 2 classes 与其他库建立连接。构建依赖关系图的初始化器 class 和发布器 class 具有获取方法的方法 return 所需的对象实例。
我想要完成的是制作 3 个 aar 文件,每个库一个。库 1 和 2 使用核心库 aar。应用程序从工件存储库中获取库 1 和 2。
我目前的问题是,在 3 个 aar 文件中的任何一个都是 Dagger 2 生成的 classes。我不确定为什么。所有 classes 都是在我构建项目时生成的,但编译的 classes 不在 aar 文件中。
我正在使用:
apt 'com.google.dagger:dagger-compiler:2.5'
compile 'com.google.dagger:dagger:2.5'
provided 'javax.annotation:jsr250-api:1.0'
gradle-2.14.1
这是我的发布者的示例:
public class Publisher {
@Inject
ReceiversManager receiversManager;
@Inject
NetworkManager networkManager;
@Inject
HttpRequestManager httpRequestManager;
public ReceiversManager getReceiversManager(){
return receiversManager;
}
public NetworkManager getNetworkManager() {
return networkManager;
}
public HttpRequestManager getHttpRequestManager() {
return httpRequestManager;
}
public Publisher(){
Initializer.getComponent().inject(this);
}
}
我用这个脚本解决了问题https://github.com/adwiv/android-fat-aar
该脚本有助于创建包含依赖项的 aar,这在许多情况下都非常方便。