Gemäß den Datumsangaben in meinen Java-Klassen oder den APL2-Funktionen, die auf diese Klassen zugreifen, ist es nun zwei Jahre her ist, dass ich mich mit Java beschäftigt habe. Nicht, weil ich Java so toll finde, sondern um die Schnittstelle vom und zum APL2 zu nutzen. Das hat auch einiges
Beständiges gebracht, Funktionen, die ich seitdem regelmäßig genutzt habe.
Java Klassen entwickelt habe ich seitdem nicht mehr. Damit ich es in zwei Jahren leichter habe, wenn ich mich evtl. wieder nach längerer Pause in Java einarbeiten muss, nutze ich diesen Blog als Merkzettel.
Die
Installation und Anbindung ans APL2 hat ja reibungslos funktioniert.
Aber, was war das bloß, dass APL2Env_ nicht wie erwartet wollte? Das APL2 Hostwin meinte irgendwelche Klassen zu vermissen. Das kam alles bedeuten. Ich war sicher zu ungeduldig und habe wahrscheinlich was übersehen. Denn ...
Heute morgen habe ich eclipse installiert, einige Klassen von links nach rechts verschoben, "classpath" angepasst und - Überraschung! - APL2Env_ und Genossen zicken nicht mehr.
Hier noch drei weitere Merkposten:
Ich habe noch den Pfad zum JDK bin-Verzeichnis in die path-Variable angefügt. Ich kann damit nun die Java-Tools in der Windows-Eingabeaufforderung nutzen. Dann funktioniert es auch mit dem APL2 User's Guide, S.171:
"The Java SDK tool javap can be used to extract the signatures of Java class fields and methods. For example,
javap -s com.ibm.apl2.Apl2interp"
Sehr hilfreich für das Zusammenbauen der Argumente der P14-Funktionen.
Um mit den com.ibm.apl2-Klassen und mit meinen eigenen Klassen arbeiten zu können, habe ich - global - die "classpath"-Variable um entsprechende Pfade erweitert.
Aber Vorsicht: Der Name der auszuführenden Java-Klasse als Parameter für java.exe ist "case sensitive". Auch wenn der Name der Datei, die die Klasse "apl2env1" enthält, als APL2Env1.class angegeben, ist "java apl2env1" die richtige Anweisung, da in APL2Env1.java der Name der Klasse kleingeschrieben ist.
Wenn man seine Java-Einführung in 21 Tagen gut gelesen hat, ist diese Erkenntnis trivial. Aber nach zwei Jahren ...
Mit eclipse wäre das nicht passiert!