导入已在单一类型导入中定义
Posted
技术标签:
【中文标题】导入已在单一类型导入中定义【英文标题】:import already defined in single type import 【发布时间】:2019-10-05 22:03:34 【问题描述】:我需要帮助来弄清楚如何解决我活动中两个冲突导入的问题,即:
retrofit2.Response
com.android.volley.Response
第一个导入旨在帮助我管理 api 回调响应,而第二个导入旨在帮助我在上传文件时管理 stringrequest 响应。单独实现一个,即仅运行 api 调用以获取数据本身就可以正常工作,就像自己上传文件一样。现在将两者合并到一个活动中,这样当用户从下拉列表中选择数据时,其列表来自服务器,然后上传文件被证明是非常麻烦的错误:
retrofit2.Response
已在单一类型导入中定义
或
com.android.volley.Response
已在单一类型导入中定义
取决于哪个先来。
【问题讨论】:
【参考方案1】:您不能导入两个具有相同名称的不同类。在这些情况下,您可以导入一个,但使用具有完全限定名称的另一个。
例如:
import retrofit2.Response;
Response response = ...; //This is Retrofit Response object
com.android.volley.Response otherResponse = ...; //This is volley Response object
【讨论】:
【参考方案2】:如果您需要使用两个或多个具有相同名称的类,您可以选择其中一个。
选项 1:将一种类型用于导入,并使用另一种的完全限定类名。
import java.util.Date;
public class SameNameConflicts
Date date;
java.sql.Date sqlDate;
选项 2:对两者都使用完全限定的类名。
public class SameNameConflicts
java.util.Date date;
java.sql.Date sqlDate;
【讨论】:
【参考方案3】:如果我是你,我会创建使用改造来上传图片 查看 How to Upload Image file in Retrofit 2 和ANDROID UPLOAD IMAGE TO SERVER USING RETROFIT 2
【讨论】:
以上是关于导入已在单一类型导入中定义的主要内容,如果未能解决你的问题,请参考以下文章
未定义或导入 C# 预定义类型“System.Object”
预定义类型“System.Object”未定义或导入.net 4.6