将apache pig导入android项目会导致“unable to execute dex:java heap space”错误

sqyvllje  于 2021-06-03  发布在  Hadoop
关注(0)|答案(2)|浏览(358)

我想把一个 TreeMap 在我的android应用程序中,这样我就可以将它保存到 SharedPreferences ,如本问答所建议。是为了一个 ArrayList 但我还是抓住了机会。关键是使用 ObjectSerializer 类将树Map序列化为字符串,并将其保存在共享prefs中的该数据类型中。
然而,当我在没有hadoop的情况下导入.jar时,我就开始出现很多错误。当我在emulator中运行我的应用程序(我使用eclipse)时,ide底部的状态栏永远不会超过消息“launching[app name]100%…”然后,过了很长一段时间后,出现这样的消息:

如果我再等一会儿,会出现更多对话框:

我的问题是:
怎么回事?为什么会这样?这可能是ApachePig的错误吗?
有没有其他库可以用来序列化我的 TreeMap ? 现在,我的解决方法是自己序列化它,如本教程所述,并将其保存在设备内部内存中与共享pref分开的文件中。

qxsslcnc

qxsslcnc1#

解决方案是在android应用程序中不使用ApachePig——这是一个非常糟糕的举动。apachepig针对大数据项目进行了优化,需要大量的物理资源才能运行。如果您只需要一个类来序列化您的对象,那么导入它是不值得的。
我只是将pig从应用程序的引用库中移除,然后在eclipse中再次正确启动应用程序。

0ve6wy6x

0ve6wy6x2#

是否可以尝试打开eclipse.ini文件并更改以下参数:
--发射器.xxmaxpermsize 512m
-xx:maxpermsize=256m
-xms512m型
-XMX1024米

相关问题