为什么在使用Dagger的HashMap时Java会抛出NullPointerException?

huangapple 未分类评论46阅读模式
英文:

Why does Java throw NullPointerException using HashMap with Dagger?

问题

首先,我创建Dagger Component和Module。

@Singleton
@Component(modules = {UploadModule.class})
public interface UploadComponent {
    void inject(UploadS3ToMap requestHandler);
}

Module:

private Map<String, String> uploadMap = new HashMap<String, String>();

@Singleton
@Provides
Map<String, String> getUploadMap() {
    return uploadMap;
}

然后尝试在我的类中使用它:

@Inject
Map<String,String> getUploadMap;

getUploadMap.put("test", "testIssue");
return getUploadMap.toString();

但我遇到了异常:nulljava.lang.NullPointerException

这里有什么问题?

英文:

First I create Dagger Component and Module.

@Singleton
@Component(modules = {UploadModule.class})
public interface UploadComponent {
    void inject(UploadS3ToMap requestHandler);
}

Module:

private Map&lt;String, String&gt; uploadMap = new HashMap&lt;String, String&gt;();

@Singleton
@Provides
Map&lt;String, String&gt; getUploadMap() {
    return uploadMap;
}

And than trying to use it in my Class:

@Inject
Map&lt;String,String&gt; getUploadMap;

getUploadMap.put(&quot;test&quot;, &quot;testIssue&quot;);
return getUploadMap.toString();

And I have an Exception: nulljava.lang.NullPointerException

What is wrong with it?

huangapple
  • 本文由 发表于 2020年7月23日 15:23:00
  • 转载请务必保留本文链接:https://java.coder-hub.com/63048942.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定