Xstream 保存计划结果时出现optaplanner堆栈溢出异常

Xstream 保存计划结果时出现optaplanner堆栈溢出异常,xstream,optaplanner,Xstream,Optaplanner,当我尝试为665名客户保存规划车辆路线结果时(使用“另存为…”按钮),我得到堆栈溢出异常: Exception in thread "AWT-EventQueue-0" java.lang.StackOverflowError: null at com.thoughtworks.xstream.mapper.MapperWrapper.isImmutableValueType(MapperWrapper.java:42) at com.thoughtworks.xstream.m

当我尝试为665名客户保存规划车辆路线结果时(使用“另存为…”按钮),我得到堆栈溢出异常:

Exception in thread "AWT-EventQueue-0" java.lang.StackOverflowError: null
    at com.thoughtworks.xstream.mapper.MapperWrapper.isImmutableValueType(MapperWrapper.java:42)
    at com.thoughtworks.xstream.mapper.MapperWrapper.isImmutableValueType(MapperWrapper.java:42)
    at com.thoughtworks.xstream.mapper.MapperWrapper.isImmutableValueType(MapperWrapper.java:42)
    at com.thoughtworks.xstream.mapper.MapperWrapper.isImmutableValueType(MapperWrapper.java:42)
    at com.thoughtworks.xstream.mapper.MapperWrapper.isImmutableValueType(MapperWrapper.java:42)
    at com.thoughtworks.xstream.mapper.MapperWrapper.isImmutableValueType(MapperWrapper.java:42)
    at com.thoughtworks.xstream.mapper.MapperWrapper.isImmutableValueType(MapperWrapper.java:42)
    at com.thoughtworks.xstream.mapper.MapperWrapper.isImmutableValueType(MapperWrapper.java:42)
    at com.thoughtworks.xstream.mapper.MapperWrapper.isImmutableValueType(MapperWrapper.java:42)
当10个(或更多)客户少于(655个或更少)时,它工作正常。你知道怎么了吗

在不同的情况下,异常看起来是不同的,首先我认为它是一些wierd字符(这让xml序列化变得疯狂——就像调用堆栈上的xml序列化方法一样),所以我用id替换了所有的地址。然后我认为,如果节点区域中的地址没有uniqe名称,可能是这样的——但事实并非如此。我还尝试了32位和64位java,但这对eather没有帮助

最后一次尝试的完整堆栈在这里 这是我的vrp文件的zip,例外是100%可重复使用该数据集

我使用的二进制文件来自:optaplanner-distribution-6.4.0.Final
提前感谢

一旦VRP数据集达到一定大小,链表结构就会触发XStream中的堆栈溢出。在这种规模下,XML格式也变得非常冗长:例如,10000个XML格式的客户可以占用GB的磁盘空间。。。将大型案例持久化到磁盘(或存储在数据库中)时,最好将其导出为txt格式。请参见
VehicleRoutingSolutionFileIO

类路径中的xstream版本是什么?它是optaplanner-发行版6.4.0我可以通过optaplanner UI或配置执行任何操作,还是必须使用代码才能使用此选项?thanksi通过使用选项-Xss256m解决了这个问题,但是XML文件的大小是3GB。所以我想我必须使用你提到的选项。唯一的问题仍然是,这是否必须在代码中完成(我已经多年没有用java编写代码了,但我将再次开始:),或者我可以以某种方式配置它吗?目前还没有VehiclerRoutingExporter(还?),但请看
TspExporter
,以获得灵感。特别是查看
writeSolution()
方法。