Collections.sort funktioniert nicht in exportierten .class Dateien


darksmilie

Erfahrenes Mitglied
#1
Hi,

ich habe ein java Programm geschrieben welches ohne Probleme funktioniert solange ich es aus eclipse starte. Wenn ich nun die .class Dateien exportiere und über ein batch script starte funktioniert das "Collections.sort" nicht. gibt es da irgentwelche einschränkungen?

Ich muss leider java 1.6 benutzen, da ich Daten aus einer sehr alten Schnittstelle lesen muss.

mfg
Darksmilie
 

darksmilie

Erfahrenes Mitglied
#3
Ich mache ein "File-System" export in Eclipse, welcher mir die .class Files exportiert und diese benutze ich dann.

Der aufruf in meiner batch sieht so aus:
"%JAVA_HOME%\bin\java" -Xmx1024M -Dlog4j.configuration=file:"%INTG_HOME%/log4j.properties" -classpath "%INTG_CLASSPATH%" abc.Main ParamterA
 

darksmilie

Erfahrenes Mitglied
#4
Hier sind die unterscheidlichen Ausgaben:
In Eclipse gestartet:
- KW5 30.01.2017
- KW6 06.02.2017
- KW7 13.02.2017
- KW9 27.02.2017
- KW11 13.03.2017
- KW12 20.03.2017
- KW13 27.03.2017
- KW14 03.04.2017
- KW15 10.04.2017
- KW16 17.04.2017
- KW17 24.04.2017
- KW18 01.05.2017
- KW19 08.05.2017

Über das Batch-Script gestartet:
- KW12 20.03.2017
- KW7 13.02.2017
- KW18 01.05.2017
- KW6 06.02.2017
- KW9 27.02.2017
- KW14 03.04.2017
- KW13 27.03.2017
- KW5 30.01.2017
- KW16 17.04.2017
- KW19 08.05.2017
- KW15 10.04.2017
- KW17 24.04.2017
- KW11 13.03.2017
 

darksmilie

Erfahrenes Mitglied
#5
Ich habe mein Fehler gefunden:
Code:
Collections.sort(timeListe, new Comparator<Time>() {
       @Override
       public int compare(Time ts1, Time ts2) {
       if (ts1.getTime() != null && ts2.getTime() != null
           && ts1.getTime().before(ts2.getTime())) {
           return -1;
       }
       return 0;
       }
   });
Es muss return 1; sein und nicht return 0;.