欢迎使用普元产品知识库,本知识库包含普元应用开发平台EOSPlatform,流程平台BPS,企业服务总线ESB,微服务平台Microservice,运维管理平台Devops,数据集成平台DI

页面树结构

欢迎使用普元文档库

Skip to end of metadata
Go to start of metadata

问题描述:

SSM 在运行过程中每隔5分钟后台抛异常:java.lang.IllegalArgumentException: Comparison method violates its general contract!

java.lang.IllegalArgumentException: Comparison method violates its general contract!
at java.util.TimSort.mergeHi(TimSort.java:899)
at java.util.TimSort.mergeAt(TimSort.java:516)
at java.util.TimSort.mergeForceCollapse(TimSort.java:457)
at java.util.TimSort.sort(TimSort.java:254)
at java.util.Arrays.sort(Arrays.java:1438)
at com.primeton.esb.ssm.agent.loader.handler.DefaultNativeLogDirectoryLoader.getNativeLogFiles(DefaultNativeLogDirectoryLoader.java:89)
at com.primeton.esb.ssm.agent.loader.handler.DefaultNativeLogDirectoryLoader.loadLogDirectory(DefaultNativeLogDirectoryLoader.java:128)
at com.primeton.esb.ssm.agent.loader.handler.DefaultNativeLogDirectoryLoader.handle(DefaultNativeLogDirectoryLoader.java:181)
at com.primeton.esb.ssm.agent.common.handler.AbstractRunnableHandler.run(AbstractRunnableHandler.java:39)
at java.lang.Thread.run(Thread.java:748)

解决办法:

在启动脚本中添加 -Djava.util.Arrays.useLegacyMergeSort=true 这个JVM参数

  • 无标签