无法解析符号“IOUtils”
Posted
技术标签:
【中文标题】无法解析符号“IOUtils”【英文标题】:Cannot resolve symbol 'IOUtils' 【发布时间】:2014-08-26 00:37:27 【问题描述】:我使用以下代码在我的 android 应用中创建了一个临时文件:
public File streamToFile (InputStream in) throws IOException
File tempFile = File.createTempFile("sample", ".tmp");
tempFile.deleteOnExit();
FileOutputStream out = new FileOutputStream(tempFile);
IOUtils.copy(in, out);
return tempFile;
现在问题是Cannot resolve symbol 'IOUtils'
。我做了一点谷歌搜索,发现要使用 IOUtils,我需要下载并包含一个 jar 文件。我从 here(commons-io-2.4-bin.zip) 下载了 jar 文件。我将名为 commons-io-2.4.jar
的 jar 从 zip 添加到我的包中,当我尝试使用以下方法导入它时:
import org.apache.commons.io.IOUtils;
它显示错误Cannot resolve symbol 'io'
。所以我尝试像这样导入它:
import org.apache.commons.*
但我仍然收到错误Cannot resolve symbol 'IOUtils'
。
问题 1:为什么会出现此错误?如何解决?
问题 2:有什么方法可以在不使用外部库的情况下从 InputStream 创建临时文件?或者这是最有效的方法吗?我正在使用安卓工作室。
【问题讨论】:
How to add Gson dependency to your Android app 【参考方案1】:添加下面的依赖解决了问题
implementation 'org.apache.directory.studio:org.apache.commons.io:2.4'
【讨论】:
【参考方案2】:对于那些在从事 Netbeans Java 项目时遇到这种情况的人。我所做的是我在这里下载了 IO 的 Binaries Zip
Commons IO Util Jar Download Here
然后右键单击我的项目>属性>
在类别窗格中,单击库
然后点击添加 Jar/文件夹
找到下载的 IO Util 的 jar 文件/文件夹。
然后单击确定。那固定我的。 :)
【讨论】:
这个问题被标记为android-studio 一个关于 Netbeans 的答案没有回答它。 android 无论如何都使用接近 java 的语法。& 我正在寻找我在 netbeans 中工作时遇到的这个确切问题,该问题曾经是用于在 android 中开发的 IDE,似乎值得指出。上面为 android-studio 提供的逐步问题和必要的 jar 文件与在 Netbeans 中遇到的解决上述相同问题的方法很接近。我只是在 netbeans 中提供我的版本,因为在 netbeans 中工作时也可能遇到这种情况。事实是,我正在研究这个 java proj.in netbeans,以便以后可以使用工作代码将它部署到 android 中。【参考方案3】:对于 Android Studio:
-
文件 -> 项目结构... -> 依赖项
点击右上角的“+”,选择“库依赖”
在搜索字段中输入:“org.apache.commons.io”并点击搜索
选择“org.apache.directory.studio:org.apache.commons.io:
编码愉快:)
【讨论】:
或者将compile 'org.apache.directory.studio:org.apache.commons.io:2.4'
添加到build.gradle
文件中
要查看依赖项选项卡,首先单击“模块”下的“应用程序”。
如果我们按照答案进行操作,有时 android studio 不会安装依赖项。最好像@JoaquinIurchuk 所说的那样手动完成【参考方案4】:
在项目导航器中右键单击commons-io-2.4.jar
文件并单击“添加到项目”即可解决此问题。
【讨论】:
@Zindarod 迟到的答案我知道,但请参阅 ***.com/questions/17895557/… 获取 jar以上是关于无法解析符号“IOUtils”的主要内容,如果未能解决你的问题,请参考以下文章