# Comparison method violates its general contract! 在JDK 6 升到 JDK7以上時, 排序演算法因為不同的關係,所以可能會報錯誤,java7開始引入了Timsort的排序演算法,所以針對compareTo這個方法必須要改寫, 或是給jvm新增啟動引數 ```java= -Djava.util.Arrays.useLegacyMergeSort=true ``` 實例: 在JBoss裡面的bin資料夾,找到standalone.conf 更改裡面的JAVA_OPTS, 加上-Djava.util.Arrays.useLegacyMergeSort=true 即可正常運作 在tomcat裡面的bin資料夾,找到catalina.sh 更改裡面的JAVA_OPTS, 加上-Djava.util.Arrays.useLegacyMergeSort=true 即可正常運作 [參考網站](https://www.itread01.com/content/1550569507.html) [參考網站2](https://codertw.com/%E7%A8%8B%E5%BC%8F%E8%AA%9E%E8%A8%80/307637/) ###### tags: java