对于我的客户机,我有一个名为CacheDownloader的类,它为我的主jar客户机下载解压缩更新。我遇到了一个问题,因为它不能解压缩新的客户端并在使用时替换它,所以我必须创建一个新的jar (名为ClientUpdater),它将解压缩新的客户端以替换旧的,然后打开新的。
ClientUpdater打开客户端备份没有问题。但是,CacheDownloader无法打开ClientUpdater,它会出现内存不足错误。
CacheDownloader仍然下载所有新文件并解压缩最主要的文件,ClientUpdater所做的只是解压一个包含相当小的客户端的很小的压缩文件。
下面是CacheDownloader加载ClientUpdater的方式:
Runtime.getRuntime().exec("java -jar " + getCacheDir() + "/ClientUpdater.jar");
System.exit(0);以下是完整的错误消息- http://gyazo.com/8105ffd4c35f5f6d4a68a770fedf8f92
希望这是足够的上下文和信息,而不是太长。我现在的问题是,我该如何着手解决这个问题?错误告诉我可以增加保留的代码缓存,这有负面的一面吗?不管怎样,我该怎么做呢,谷歌并没有真正展示它是如何解释它的作用的。
我对Java还很陌生,所以一定要记住一些事情。
发布于 2015-06-20 09:13:33
https://stackoverflow.com/questions/30949056
复制相似问题