Skip to content

IllegalArgumentException on starting mmj2 #71

@avekens

Description

@avekens

Since recently, an IllegalArgumentException is thrown on starting mmj2. The start of the application is aborted afterwards:

Here is the stack trace from the cmd console:

I-UT-0015 **** Processing RunParmFile Command #20 = RunProofAsstGUI
I-PA-0412 Excluded these assertions from Unification search list as requested on input RunParm: [dummylink]
Comparison method violates its general contract!
java.lang.IllegalArgumentException: Comparison method violates its general contract!
        at java.util.ComparableTimSort.mergeHi(Unknown Source)
        at java.util.ComparableTimSort.mergeAt(Unknown Source)
        at java.util.ComparableTimSort.mergeCollapse(Unknown Source)
        at java.util.ComparableTimSort.sort(Unknown Source)
        at java.util.Arrays.sort(Unknown Source)
        at sun.awt.shell.Win32ShellFolderManager2.get(Unknown Source)
        at sun.awt.shell.ShellFolder.get(Unknown Source)
        at javax.swing.plaf.metal.MetalFileChooserUI$DirectoryComboBoxModel.addItem(Unknown Source)
        at javax.swing.plaf.metal.MetalFileChooserUI$DirectoryComboBoxModel.access$800(Unknown Source)
        at javax.swing.plaf.metal.MetalFileChooserUI.doDirectoryChanged(Unknown Source)
        at javax.swing.plaf.metal.MetalFileChooserUI.access$1100(Unknown Source)
        at javax.swing.plaf.metal.MetalFileChooserUI$5.propertyChange(Unknown Source)
        at java.beans.PropertyChangeSupport.fire(Unknown Source)
        at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
        at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
        at java.awt.Component.firePropertyChange(Unknown Source)
        at javax.swing.JFileChooser.setCurrentDirectory(Unknown Source)
        at javax.swing.JFileChooser.setSelectedFile(Unknown Source)
        at mmj.pa.ProofAsstGUI.buildMMTFolderChooser(ProofAsstGUI.java:538)
        at mmj.pa.ProofAsstGUI.<init>(ProofAsstGUI.java:257)
        at mmj.pa.ProofAsst.doGUI(ProofAsst.java:200)
        at mmj.util.ProofAsstBoss.doRunProofAsstGUI(ProofAsstBoss.java:1031)
        at mmj.util.Boss.lambda$putCommand$0(Boss.java:107)
        at mmj.util.Boss.doRunParmCommand(Boss.java:121)
        at mmj.util.BatchFramework.executeRunParmCommand(BatchFramework.java:281)
        at mmj.util.BatchFramework.runIt(BatchFramework.java:223)
        at mmj.util.BatchMMJ2.main(BatchMMJ2.java:53)
Comparison method violates its general contract!

I still use mmj2 v2.4.1 as of 26-Jan-2016, currently with Java version 1.8.0_371 (there was an update on 15-Sep-2023!). Is it possible that the Java update causes this problem? Or did any change within my file system caused it (root cause for the exception within mmj2 is at mmj.pa.ProofAsstGUI.buildMMTFolderChooser(ProofAsstGUI.java:538)).

There are many hints on stackoverflow (https://stackoverflow.com/questions/11441666/java-error-comparison-method-violates-its-general-contract), even remarks on Java versions.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions