找不到 GeneratedAppGlideModule 错误
Failed to find GeneratedAppGlideModule error
我正在使用 Glide 库加载图像 android 早些时候 Glide 很容易加载图像,但现在它显示错误,虽然图像 url 显示在 log cat 中但无法在图像视图中加载.
显示以下错误:
Failed to find GeneratedAppGlideModule. You should include an
annotationProcessor compile dependency on
com.github.bumptech.glide:compiler in your application and a
@GlideModule annotated AppGlideModule implementation or
LibraryGlideModules will be silently ignored
build.gradle
apply plugin: 'com.android.application'
repositories {
mavenCentral()
maven { url 'https://maven.google.com' }
}
android {
compileSdkVersion 28
defaultConfig {
applicationId "com.app.bookbudiapp"
minSdkVersion 16
targetSdkVersion 28
multiDexEnabled true
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation 'com.github.bumptech.glide:glide:4.8.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'
}
apply plugin: 'com.google.gms.google-services'
MyGlideApp
@GlideModule
public class MyGlideApp extends AppGlideModule {}
HomeOfferAdapter.java
public class HomeOfferAdapter extends PagerAdapter {
private Context context;
private LayoutInflater layoutInflater;
private List<HomeOffersModel> banners;
public HomeOfferAdapter(List<HomeOffersModel> banners,Context context){
this.banners = banners;
this.context = context;
}
@Override
public int getCount() {
return banners.size();
}
@Override
public boolean isViewFromObject(@NonNull View view, @NonNull Object o) {
return view == o;
}
@NonNull
@Override
public Object instantiateItem(@NonNull ViewGroup container, int position) {
layoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
assert layoutInflater != null;
View view = layoutInflater.inflate(R.layout.onboard_frag,container,false);
ImageView slideImage = view.findViewById(R.id.offerImage);
HomeOffersModel model = banners.get(position);
// RequestOptions options = new RequestOptions();
// options.placeholder(R.drawable.openbook);
GlideApp.with(context).load(model.getOffers()).placeholder(R.drawable.openbook).into(slideImage);
container.addView(view);
return view;
}
@Override
public void destroyItem(@NonNull ViewGroup container, int position, @NonNull Object object) {
container.removeView((LinearLayout)object);
}
}
重建项目后出错:
Caused by: java.lang.NullPointerException
at com.bumptech.glide.annotation.compiler.ProcessorUtil.findInstanceMethodsReturning(ProcessorUtil.java:474)
at com.bumptech.glide.annotation.compiler.RequestOptionsOverrideGenerator.generateInstanceMethodOverridesForRequestOptions(RequestOptionsOverrideGenerator.java:49)
at com.bumptech.glide.annotation.compiler.RequestOptionsOverrideGenerator.generateInstanceMethodOverridesForRequestOptions(RequestOptionsOverrideGenerator.java:41)
at com.bumptech.glide.annotation.compiler.RequestOptionsGenerator.generate(RequestOptionsGenerator.java:157)
at com.bumptech.glide.annotation.compiler.AppModuleProcessor.maybeWriteAppModule(AppModuleProcessor.java:87)
at com.bumptech.glide.annotation.compiler.GlideAnnotationProcessor.process(GlideAnnotationProcessor.java:131)
at org.gradle.api.internal.tasks.compile.processing.DelegatingProcessor.process(DelegatingProcessor.java:62)
at org.gradle.api.internal.tasks.compile.processing.AggregatingProcessor.process(AggregatingProcessor.java:50)
at com.sun.tools.javac.processing.JavacProcessingEnvironment.callProcessor(JavacProcessingEnvironment.java:794)
at com.sun.tools.javac.processing.JavacProcessingEnvironment.discoverAndRunProcs(JavacProcessingEnvironment.java:705)
at com.sun.tools.javac.processing.JavacProcessingEnvironment.access00(JavacProcessingEnvironment.java:91)
at com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.run(JavacProcessingEnvironment.java:1035)
at com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:1176)
at com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1170)
at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:856)
at com.sun.tools.javac.main.Main.compile(Main.java:523)
... 69 more
有人请让我知道我做错了什么。任何帮助将不胜感激。
谢谢
尝试重建项目并使用 GlideApp 而不是 Glide,如下代码所示:
GlideApp.with(context).load(model.getOffers).apply(options).into(slideImage);
根据 Glide 在 GitHub 上的文档:
repositories {
mavenCentral()
google() // You were missing this
}
dependencies {
implementation 'com.github.bumptech.glide:glide:4.9.0' //bumped from 4.8.0 to 4.9.0
annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'
}
始终确保使用最新版本。这是由于您的项目级别 gradle 文件中缺少 google()
存储库造成的。
我正在使用 Glide 库加载图像 android 早些时候 Glide 很容易加载图像,但现在它显示错误,虽然图像 url 显示在 log cat 中但无法在图像视图中加载.
显示以下错误:
Failed to find GeneratedAppGlideModule. You should include an annotationProcessor compile dependency on com.github.bumptech.glide:compiler in your application and a @GlideModule annotated AppGlideModule implementation or LibraryGlideModules will be silently ignored
build.gradle
apply plugin: 'com.android.application'
repositories {
mavenCentral()
maven { url 'https://maven.google.com' }
}
android {
compileSdkVersion 28
defaultConfig {
applicationId "com.app.bookbudiapp"
minSdkVersion 16
targetSdkVersion 28
multiDexEnabled true
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation 'com.github.bumptech.glide:glide:4.8.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'
}
apply plugin: 'com.google.gms.google-services'
MyGlideApp
@GlideModule
public class MyGlideApp extends AppGlideModule {}
HomeOfferAdapter.java
public class HomeOfferAdapter extends PagerAdapter {
private Context context;
private LayoutInflater layoutInflater;
private List<HomeOffersModel> banners;
public HomeOfferAdapter(List<HomeOffersModel> banners,Context context){
this.banners = banners;
this.context = context;
}
@Override
public int getCount() {
return banners.size();
}
@Override
public boolean isViewFromObject(@NonNull View view, @NonNull Object o) {
return view == o;
}
@NonNull
@Override
public Object instantiateItem(@NonNull ViewGroup container, int position) {
layoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
assert layoutInflater != null;
View view = layoutInflater.inflate(R.layout.onboard_frag,container,false);
ImageView slideImage = view.findViewById(R.id.offerImage);
HomeOffersModel model = banners.get(position);
// RequestOptions options = new RequestOptions();
// options.placeholder(R.drawable.openbook);
GlideApp.with(context).load(model.getOffers()).placeholder(R.drawable.openbook).into(slideImage);
container.addView(view);
return view;
}
@Override
public void destroyItem(@NonNull ViewGroup container, int position, @NonNull Object object) {
container.removeView((LinearLayout)object);
}
}
重建项目后出错:
Caused by: java.lang.NullPointerException
at com.bumptech.glide.annotation.compiler.ProcessorUtil.findInstanceMethodsReturning(ProcessorUtil.java:474)
at com.bumptech.glide.annotation.compiler.RequestOptionsOverrideGenerator.generateInstanceMethodOverridesForRequestOptions(RequestOptionsOverrideGenerator.java:49)
at com.bumptech.glide.annotation.compiler.RequestOptionsOverrideGenerator.generateInstanceMethodOverridesForRequestOptions(RequestOptionsOverrideGenerator.java:41)
at com.bumptech.glide.annotation.compiler.RequestOptionsGenerator.generate(RequestOptionsGenerator.java:157)
at com.bumptech.glide.annotation.compiler.AppModuleProcessor.maybeWriteAppModule(AppModuleProcessor.java:87)
at com.bumptech.glide.annotation.compiler.GlideAnnotationProcessor.process(GlideAnnotationProcessor.java:131)
at org.gradle.api.internal.tasks.compile.processing.DelegatingProcessor.process(DelegatingProcessor.java:62)
at org.gradle.api.internal.tasks.compile.processing.AggregatingProcessor.process(AggregatingProcessor.java:50)
at com.sun.tools.javac.processing.JavacProcessingEnvironment.callProcessor(JavacProcessingEnvironment.java:794)
at com.sun.tools.javac.processing.JavacProcessingEnvironment.discoverAndRunProcs(JavacProcessingEnvironment.java:705)
at com.sun.tools.javac.processing.JavacProcessingEnvironment.access00(JavacProcessingEnvironment.java:91)
at com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.run(JavacProcessingEnvironment.java:1035)
at com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:1176)
at com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1170)
at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:856)
at com.sun.tools.javac.main.Main.compile(Main.java:523)
... 69 more
有人请让我知道我做错了什么。任何帮助将不胜感激。
谢谢
尝试重建项目并使用 GlideApp 而不是 Glide,如下代码所示:
GlideApp.with(context).load(model.getOffers).apply(options).into(slideImage);
根据 Glide 在 GitHub 上的文档:
repositories {
mavenCentral()
google() // You were missing this
}
dependencies {
implementation 'com.github.bumptech.glide:glide:4.9.0' //bumped from 4.8.0 to 4.9.0
annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'
}
始终确保使用最新版本。这是由于您的项目级别 gradle 文件中缺少 google()
存储库造成的。