Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum>Entwickler>Xcode package in Java installieren ???

Xcode package in Java installieren ???

megal08.11.0415:55
hallo,

ich habe eine problem mit Xcode Java, ich soll(muß) ein neues package installieren (dsszIO.jar) weiß aber weder wo noch wie !?
ich habe es bereits in die lib/exe hinzugefügt
"System/Libary/Frameworks/JavaVM.Frameworks/Versions/1.4.2/Home/lib/ext"
Xcode kann es auch anscheinend importieren "import dssz.io.*;"
allerdings gibt er mir einen fehler bei "stdin in = new stdin"
welche aber im package enthalten ist !
hat jemand ne idee ? oder ne alternative parat ? das package ist wirklich sehr wichtig für mich.

thx..megal
0

Kommentare

Rantanplan
Rantanplan08.11.0416:02
Fehlerbeschreibungen ohne die Fehlermeldungen sind immer sooo aufregend
„Wenn ich nicht hier bin, bin ich auf dem Sonnendeck“
0
megal08.11.0416:09
fehler bei "stdin = new stdin"
cannot access dssz.io.stdin
0
megal08.11.0416:11
btw ich benutze xcode 1.1 ..glaube aber nicht das es daran liegt
0
rofl
rofl08.11.0416:11
Lege es in /Library/Java/Extensions
0
megal08.11.0416:11
btw ich benutze xcode 1.1 ..glaube aber nicht das es daran liegt
0
megal08.11.0416:21
@rofl
hat sich nichts geändert ..immernoch die selbe fehlermelung
0
rofl
rofl08.11.0416:39
Ach du willst dieses package nutzen? dann solltest du es auch in das projekt mitaufnehmen
0
megal08.11.0416:47
ähm..ja sicher will ich es nutzen *g*
wie meinst denn das mit im projekt aufnehmen ?
import dssz.io.*; ...wird ja anscheinend ausgeführt bzw es gibt dort keinen fehler, sondern nur bei den konstruktoren und methoden dieses packages und ich weiß nicht wieso

der code sieht wie folgt aus:

import dssz.io.*;

public class Wuerfel {

public static void main(String [] arg) {

// Vereinbarungen
stdin in = new stdin();
int laenge, volumen, oberflaeche;

// Eingabe
laenge = in.getInt("Eingabe der Kantenlaenge ");

// Verarbeitung
volumen = laenge*laenge*laenge;
oberflaeche = 6 * laenge * laenge;

//Ausgabe der Ergebnisse
System.out.println("Volumen " + volumen + " Einheiten ");
System.out.println("Oberflaeche " + oberflaeche + " Einheiten ");

} // main

} // class Wuerfel
0
rofl
rofl08.11.0416:48
obwohl ich so den mysqlconnector auch zum funktionieren brachte in /Library/Java/Extensions
0
Rantanplan
Rantanplan08.11.0416:50
Also /Library/Java/Extensions ist schon mal der richtige Ort, nicht /System/Library/etcetc. Dann findet die Java-VM die jars auch ohne weitere Angaben. Wie beim Kompilieren in XCode aussieht weiß ich jetzt nicht, bei Java verwende ich XCode nur als Editor und kompiliere immer extern mit Make Vermutlich mußt du das jar in den Target-Settings Search Paths Java classes eintragen.
„Wenn ich nicht hier bin, bin ich auf dem Sonnendeck“
0
rofl
rofl08.11.0416:53
Probier es mal so

int zahl;
System.out.print( "Ein Zahl eingeben: " );

// Konsole für Eingabe vorbereiten
BufferedReader din;
din = new BufferedReader( new InputStreamReader( System.in ) );

// Zahl von der Konsole einlesen
zahl = Integer.parseInt( din.readLine() );
0
megal08.11.0417:05
@rantanplan
wo finde ich die option Target-Settings ?
0
megal08.11.0417:10
@rofl
ja so hätte ich es auch geschrieben ...dafür brauch ich dann das package nicht da genügt ja auch java.io
aber ich MUSS dieses package nutzen da es mir so vorgegeben wurde allerdings vermute ich mitlerweile das es an der Java version liegt... denn da steht dazu das ich vorher (b)java.1.5(/b)
installieren soll..und das gibt es ja noch nicht für den apfel oder !?

hier kann man sich das package downloaden:
0
Rantanplan
Rantanplan08.11.0417:10
In der linken Spalte die Targets aufklappen, dort ist mindestens ein Target drin mit dem Namen deiner Applikation. Auf diesem Doppelklick und der Target-Dialog geht auf. Ich hoffe, das war beim XCode 1.1 auch schon so...
„Wenn ich nicht hier bin, bin ich auf dem Sonnendeck“
0
Marten08.11.0417:22
nur als Randbemerkung: wenn du eine 'pure' Java-Anwendung schreibst tust du dir vielleicht leichter, wenn du es einfach aus der Kommandozeile kompilierst, startest. Wenn du ein grösseres Projekt hast schau dir vielleicht ant an. XCode und Java sind nicht wirklich gute Freunde, ganz rudimentäre Sachen wie den CLASSPATH setzen sind gut versteckt, die default Target VM ist Java 1.3 usw. Als Editor kann man es trotzdem gut verwenden.
0
megal08.11.0417:39
@rantaplan
bei targets ..java classes läßt sich keine class oder jar datei auswählen die man hinzufügen könnte.

ich habs jetzt mal manuell kompiliert (terminal)
und bekomme als ergebenis diese fehlermeldung raus

Obst-ist-gesund:~/Desktop/Java/test1 name$ javac test1.java
test1.java:22: cannot access dssz.io.stdin
bad class file: /Library/Java/Extensions/dsszIO.jar(dssz/io/stdin.class)
class file has wrong version 49.0, should be 48.0
Please remove or make sure it appears in the correct subdirectory of the classpath.
stdin in = new stdin();
^
1 error
Obst-ist-gesund:~/Desktop/Java/test1 name$
0
Rantanplan
Rantanplan08.11.0417:44
Ja, du mußt das jar-File im classpath angeben, also etwa so:

javac -classpath dasszio.jar test1.java
„Wenn ich nicht hier bin, bin ich auf dem Sonnendeck“
0
Frank
Frank08.11.0417:46
Dann liegts am fehlenden Java5. Dort hat sich das Binärformat geändert.
0
Rantanplan
Rantanplan08.11.0417:47
Oder wart mal.... zu schnell geantwortet Kann es sein, daß dein jar korrupt ist? Oder mit einer neueren Java-Versio kompiliert, als auf dem Mac verfügbar? Die Meldung "wrong version" irritiert mich etwas...
„Wenn ich nicht hier bin, bin ich auf dem Sonnendeck“
0
megal08.11.0417:57
ja das mein ich ja, uns wird vorgegeben das wir java1.5 runterladen sollen und dann das package dssz installieren.

"class file has wrong version 49.0, should be 48.0"

diese meldung spricht meine meinung nach dafür das mein java1.4 (in Xcode) damit nicht klar kommt ...und 1.5 gibt es ja noch nicht für den mac oder !?
amp;
0
Frank
Frank08.11.0418:01
Nein. Noch nicht. Aber vielleicht bekommst du das Classfile auch im Sourcecode. Ich glaube nicht, dass die wirklich schon irgendwelche Features von 1.5 nutzen.

Den Sourcode jagst du dann durch den 1.4 Compiler und alles sollte gehen.
0
megal08.11.0418:13
also so wie es aussieht ist das package schon älter, hab diese infos gefunden:

(1) Suchen der Datei 'classes.zip' in den Unterordnern des 'JDK'.
(Zum Bsp.: '/usr/lib/java/lib';
DOS/win: 'C:\Programme\JDK1.1.7\lib')

(2) In diesen Ordner wechseln.

(3) Anlegen eines neuen Ordner 'dssz/io' in diesem Ordner aus(1).
(Für DOS/Win: 'dssz\io').

(4) Kopieren der Dateien 'stdout.java' und 'stdout.class' in diesen
neuen Unterordner.

(5) Setzen der Umgebungsvariable CLASSPATH auf den Ordner aus (1), die Datei 'classes.zip' in diesem Ordner und (wahlweise) auf das aktuelle Verzeichnis.
0
megal08.11.0418:27
also so wie es aussieht ist das package schon älter, hab diese infos gefunden:

(1) Suchen der Datei 'classes.zip' in den Unterordnern des 'JDK'.
(Zum Bsp.: '/usr/lib/java/lib';
DOS/win: 'C:\Programme\JDK1.1.7\lib')

(2) In diesen Ordner wechseln.

(3) Anlegen eines neuen Ordner 'dssz/io' in diesem Ordner aus(1).
(Für DOS/Win: 'dssz\io').

(4) Kopieren der Dateien 'stdout.java' und 'stdout.class' in diesen
neuen Unterordner.

(5) Setzen der Umgebungsvariable CLASSPATH auf den Ordner aus (1), die Datei 'classes.zip' in diesem Ordner und (wahlweise) auf das aktuelle Verzeichnis.
0
Marten08.11.0419:17
schau mal was im .jar steht.

entpacken kannst du es mit

jar xvf name.jar

da sollte es dann einen Ordner meta-inf geben, da drinnen ein file namens manifest, in dem steht mit welcher java version es kompiliert wurde. wenn es 1.5 ist, dann musst du die Klassen halt nochmal kompilieren, wenn du die .java Files hast.



0
megal08.11.0419:45
die .java files sind vorhanden ....ich versuchs einfach mal ...hab ja nix zu verlieren
0
megal08.11.0420:17
da steht 1.5 ..*supper*
wenn ich die dateien neu kompilieren will kommt die fehlermeldung:

:~/Desktop/dssz/io name$ java stdin.class
Exception in thread "main" java.lang.NoClassDefFoundError: stdin/class

und wie kann ich diese neuen classen zu nem .jar archiv machen ?
0
megal08.11.0420:42
da steht 1.5 ..*supper*
wenn ich die dateien neu kompilieren will kommt die fehlermeldung:

:~/Desktop/dssz/io name$ java stdin.class
Exception in thread "main" java.lang.NoClassDefFoundError: stdin/class

und wie kann ich diese neuen classen zu nem .jar archiv machen ?
0
megal08.11.0420:49
YEAH !
ich habs hinbekommen, das package war in java1.5 geschrieben habs jetzt in 1.4 neu kompiliert und jetzt läufts wie geschmiert

dank an euch für die hilfe

und sorry für die "doppelposts"
0

Kommentieren

Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.