javax.comm-API kompilieren

Status
Nicht offen für weitere Antworten.

javarookie

Mitglied
Hallo,

ich hab da folgendes Problem:

ein Java Programm, das mittels Commapi mit einem Gerät an der seriellen Schnittstelle komuniziert, funktioniert nicht so wie es soll.
Beim Durchstöbern des Source Codes hab ich eine mögliche Fehlerquelle entdeckt. Ich würde gern mit unterschiedlichen Datenbiteinstellung und Stopbits experimentieren. Den Quelltext hab ich also editiert und anschliessend versucht die .java Datei in eine .class zu kompilieren. Dabei hagelts aber Haufenweise Fehlermeldungen:

Code:
C:\Dokumente und Einstellungen\Adm\Desktop\skymouse>javac ComPort.java
ComPort.java:27: package javax.comm does not exist
import javax.comm.*;
^
ComPort.java:31: cannot find symbol
symbol: class SerialPortEventListener
public class ComPort implements SerialPortEventListener {
                                ^
ComPort.java:32: cannot find symbol
symbol  : class CommPortIdentifier
location: class ComPort
        static CommPortIdentifier       portId;
               ^
ComPort.java:34: cannot find symbol
symbol  : class SerialPort
location: class ComPort
        SerialPort                                      serialPort;
        ^
ComPort.java:39: cannot find symbol
symbol  : class CommPortIdentifier
location: class ComPort
        public ComPort(SkyMouse obs,CommPortIdentifier pI){
                                    ^
ComPort.java:70: cannot find symbol
symbol  : class SerialPortEvent
location: class ComPort
        public void serialEvent(SerialPortEvent event) {
                                ^
ComPort.java:45: cannot find symbol
symbol  : class SerialPort
location: class ComPort
                        serialPort = (SerialPort) portId.open("SkyMouse", 2000);

                                      ^
ComPort.java:47: cannot find symbol
symbol  : class PortInUseException
location: class ComPort
                } catch (PortInUseException e) {}
                         ^
ComPort.java:59: cannot find symbol
symbol  : variable SerialPort
location: class ComPort
                                SerialPort.DATABITS_7,
                                ^
ComPort.java:60: cannot find symbol
symbol  : variable SerialPort
location: class ComPort
                                SerialPort.STOPBITS_2,
                                ^
ComPort.java:61: cannot find symbol
symbol  : variable SerialPort
location: class ComPort
                                SerialPort.PARITY_NONE);
                                ^
ComPort.java:62: cannot find symbol
symbol  : class UnsupportedCommOperationException
location: class ComPort
                } catch (UnsupportedCommOperationException e) {}
                         ^
ComPort.java:72: cannot find symbol
symbol  : variable SerialPortEvent
location: class ComPort
                case SerialPortEvent.DATA_AVAILABLE:
                     ^
13 errors

Gleich die erste Fehlermeldung sagt was von "package javax.comm does not exist". Besagte Datei hab ich, und ich hab sie schon an alle möglichen Stellen hinkopiert wo ich denke dass javac nachschauen könnte.
Was mache ich hier falsch?

Gruß,
javarookie

L-ectron-X hat den Titel angepasst.
 

L-ectron-X

Gesperrter Benutzer
Prüfe bitte nochmal die Installation der API.
Unter Windows muss das so aussehen:
Die Datei win32com.dll kopierst du ins Unterverzeichnis \jre\bin deines JDK-Verzeichnisses.
Die Datei comm.jar kopierst du ins Unterverzeichnis \jre\lib\ext deines JDK-Verzeichnisses.
Die Datei javax.comm.properties kopierst du ins Unterverzeichnis \jre\lib deines JDK-Verzeichnisses.
 

javarookie

Mitglied
Alle Dateien sind da wo sie hingehören.
Das Beispielprogramm BlackBox, das bei Commapi dabei ist, funktioniert übrigens auch.
Damit müsste es doch richtig installiert sein, oder?
 

javarookie

Mitglied
Bin etwas weiter gekommen:

hab die Datei comm.jar entpackt und alle .class Dateien in das Verzeichnis mit der Source kopiert. Beim kompilieren hab ich jetzt nur noch zwei Fehlermeldungen:

Code:
C:\Dokumente und Einstellungen\Adm\Desktop\skymouse>javac ComPort.java
ComPort.java:27: package javax.comm does not exist
import javax.comm.*;
^
ComPort.java:31: cannot access SerialPortEventListener
bad class file: .\SerialPortEventListener.class
class file contains wrong class: javax.comm.SerialPortEventListener
Please remove or make sure it appears in the correct subdirectory of the classpa
th.
public class ComPort implements SerialPortEventListener {
                                ^
2 errors

Weiter bin aber auch nicht gekommen.
Die javax.comm.properties Datei ist im Ordner mit dem Source Code. Warum weiß er damit nix anzufangen? Und woher kommt auf einmal das "Bad class file"?

Gruss
javarookie
 

L-ectron-X

Gesperrter Benutzer
Hast du irgendwo noch den Classpath verändert? Das sollte nämlich nicht gemacht werden.
Ansonsten nutzt es dir wenig, wenn du dich nicht an die Installationsvorschrift von Sun hältst.
Hast du die .class-Dateien samt Ordner in dein Projektverzeichnis kopiert, oder nur die .class-Dateien?
In deinem Projektverzeichnis sollten sich jetzt zwei Ordner befinden. Ein com und ein javax in dem sich außerdem noch ein Verzeichnis comm mit den Klassen befinden sollte.
 

javarookie

Mitglied
Also, ich den Ordner mal verworfen und das Programm mit seinem Source Code neu entpackt, so wie ich´s aus dem Netz geladen hab. Dann hab ich die Ordner com und javax in diesen neuen Ordner kopiert.
Danach hab ich mit javac die eine Datei, deren Code ich später verändern möchte, neu kompiliert.
Ohne Fehlermeldungen! Soweit so gut.

Danach hab ich das Programm gestartet, aber wenn ich nun den Com-Port öffne krieg ich folgendes:
Code:
C:\Dokumente und Einstellungen\Adm\Desktop\skymouse>java SkyMouse
java.lang.UnsupportedClassVersionError: ComPort (Unsupported major.minor version
 49.0)
        at java.lang.ClassLoader.defineClass0(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)
        at SkyMouse.actionPerformed(SkyMouse.java:340)
        at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
        at javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(Unknow
n Source)
        at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
        at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
        at javax.swing.AbstractButton.doClick(Unknown Source)
        at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
        at javax.swing.plaf.basic.BasicMenuItemUI$MouseInputHandler.mouseRelease
d(Unknown Source)
        at java.awt.Component.processMouseEvent(Unknown Source)
        at java.awt.Component.processEvent(Unknown Source)
        at java.awt.Container.processEvent(Unknown Source)
        at java.awt.Component.dispatchEventImpl(Unknown Source)
        at java.awt.Container.dispatchEventImpl(Unknown Source)
        at java.awt.Component.dispatchEvent(Unknown Source)
        at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
        at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
        at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
        at java.awt.Container.dispatchEventImpl(Unknown Source)
        at java.awt.Window.dispatchEventImpl(Unknown Source)
        at java.awt.Component.dispatchEvent(Unknown Source)
        at java.awt.EventQueue.dispatchEvent(Unknown Source)
        at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)

        at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.run(Unknown Source)

Wie gesagt, an dem Code hab ich noch nix gemacht. Wollts erstmal ohne irgendwelche Veränderungen testen!
Wenn ich die nicht neu kompilierte Version benutze, funktioniert das Öffnen des Ports - bis auf das Problem halt dass der Port falsch ausgelesen wird, was ich ja durch ändern des Codes beheben will.
 

L-ectron-X

Gesperrter Benutzer
Also da gibt es irgendeinen Versionskonflikt. Möglicherweise hast mit einer neuen Version kompiliert und mit einer alten ausgeführt. Kein Ahnung. Aber es ist sicher sowas in dieser Richtung.
 

javarookie

Mitglied
Das Problem hat sich erledigt:
Das Java Programm sollte die Mausbewegungen an der seriellen Schnittstelle erfassen. Mit meiner Zwei-Tasten Maus hats ja nicht geklappt. Nun hab ich jetzt von einem Kollegen eine andere Maus bekommen, eine Drei-Tasten Maus. Damit scheints zu funktionieren ohne dass ich an dem Programm was ändern muß.

Trotzdem:
Vielen Dank für deine Geduld und Hilfe L-ectron-X !

JavaRookie
 

Bleiglanz

Gesperrter Benutzer
L-ectron-X hat gesagt.:
Prüfe bitte nochmal die Installation der API.
Unter Windows muss das so aussehen:
Die Datei win32com.dll kopierst du ins Unterverzeichnis \jre\bin deines JDK-Verzeichnisses.
Die Datei comm.jar kopierst du ins Unterverzeichnis \jre\lib\ext deines JDK-Verzeichnisses.
Die Datei javax.comm.properties kopierst du ins Unterverzeichnis \jre\lib deines JDK-Verzeichnisses.

ahhh immer diese Ratschläge, schon mal was vom library.path und vom classpath gehört?

oder gibt es wirklich einen technischen Grund, warum man sich sein JDK vermüllen soll??

ich sags mal wieder für alle Anfänger

LASS jre/lib/ext IN RUHE
 

L-ectron-X

Gesperrter Benutzer
Bleiglanz hat gesagt.:
ahhh immer diese Ratschläge, schon mal was vom library.path und vom classpath gehört?
Classpath? Logisch!
libary.path? Nein. Bisher nicht... ???:L
Da könntest du mich mal aufklären. Bitte.

Bleiglanz hat gesagt.:
oder gibt es wirklich einen technischen Grund, warum man sich sein JDK vermüllen soll??
Vielleicht. Ich habe nur die Ausführungen der Installationsanleitung der comm-API aus der Doku übersetzt.

Bleiglanz hat gesagt.:
ich sags mal wieder für alle Anfänger
LASS jre/lib/ext IN RUHE
Galt dieses Statement mir? Wenn ja. Danke für deine qualifizierte Einschätzung meiner Fähigkeiten.
 

Bleiglanz

Gesperrter Benutzer
beleidigte Leberwurst??

war ja nicht an dich gerichtet, sondern an Java Neulinge (wie schon gesagt, wenn es einen guten technischen grund gibt, bei der comm-API ins JDK zu kopieren ist ja alles klar)

ich finde nur, man sollte sowas hier im Forum nicht auch noch als Tipp oder Anleitung verbreiten...

Also vielleicht nochmal etwas genauer

OHNE GUTEN GRUND KOPIERT MAN NIE IRGENDWELCHE DATEIEN IN DEN JDK ORDNER, DAS IST NUR IN SEHR SELTENEN AUSNAHMEFÄLLEN NÖTIG

WENN DAS IRGENDWO IN EINEM TUTORIAL, IN EINEM BUCH ODER IM INTERNET STEHT IST DAS (FAST) IMMER UNSINN



java.library.path List of paths to search when loading libraries

kann man mit java -D festlegen :)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
D package javax.comm does not exist Java Basics - Anfänger-Themen 5
HolyFUT Javax Websocket API implementieren Java Basics - Anfänger-Themen 14
nbergmann Wo ist javax.swing.JOptionPane gespeichert? Java Basics - Anfänger-Themen 4
O Problem mit SOAP / javax.xml importieren Java Basics - Anfänger-Themen 7
J javax.servlet.ServletException: Name is null Java Basics - Anfänger-Themen 7
N javax swing JOptionPane Hilfe Java Basics - Anfänger-Themen 3
pkm javax.script.ScriptException bei der ScriptEngine Java Basics - Anfänger-Themen 9
P JDK installieren javac behauptet Javax.swing existiert nicht Java Basics - Anfänger-Themen 8
B javax.ejb.Timer wieder starten? Java Basics - Anfänger-Themen 0
R Klassen Javax.vecmath.* Java Basics - Anfänger-Themen 5
S timer funktion mit javax panel Java Basics - Anfänger-Themen 3
M Javax.swing - Timer(2 Button) Java Basics - Anfänger-Themen 17
T eclipse findet javax nicht Java Basics - Anfänger-Themen 4
N Erste Schritte import javax.media.3d....; //Fehlermeldung: cannot be resolved Java Basics - Anfänger-Themen 10
timbeau Javax.Mail: Check this out Java Basics - Anfänger-Themen 10
c_sidi90 javax.exe beenden nach Programmende Java Basics - Anfänger-Themen 10
L javax.xml.transform.Source Java Basics - Anfänger-Themen 6
StrikeTom Javax.mail frage(zu code) Java Basics - Anfänger-Themen 17
N javax.swing.JOptionPane einbauen? Java Basics - Anfänger-Themen 9
kulturfenster Problem mit javax.swing.Timer Java Basics - Anfänger-Themen 2
C javax.print.DocPrintJob Java Basics - Anfänger-Themen 17
G Fehler beim builden javax...... Java Basics - Anfänger-Themen 4
J Servlet Interface javax.servlet.Servlet Java Basics - Anfänger-Themen 2
? Konsolenprogramm hat Problem mit java.awt oder javax.swing Java Basics - Anfänger-Themen 7
G NoClassDefFoundError: javax/xml/stream/XMLStreamException Java Basics - Anfänger-Themen 23
A Finde javax.servlet.* nicht Java Basics - Anfänger-Themen 6
M Fehler: package javax.portlet does not exist Java Basics - Anfänger-Themen 2
V Serialisieren einer ShortMessage (javax.sound.midi) Java Basics - Anfänger-Themen 5
alexpetri javax.xml.stream.* nicht gefunden Java Basics - Anfänger-Themen 3
A java.awt und javax.swing verschwunden Java Basics - Anfänger-Themen 2
S import javax.image.io.*; funktioniert nicht Java Basics - Anfänger-Themen 28
L getDuration() von einem javax.media.player objekt problem. Java Basics - Anfänger-Themen 3
K Problem mit javax/servlet/http/HttpServletRequest.java Java Basics - Anfänger-Themen 2
E Wo bekomme ich das javax.swing.* package her? Java Basics - Anfänger-Themen 3
G import javax.servlet cannot be resolved Java Basics - Anfänger-Themen 1
N Probleme mit import von javax.servlet.* Java Basics - Anfänger-Themen 3
B Wo finde ich die Klasse javax.sound.sampled.AudioSystem Java Basics - Anfänger-Themen 7
R Javax.mail wird nicht gefunden Java Basics - Anfänger-Themen 2
G wie bekomme ich das javax.jws.* package in den JBuilder ? Java Basics - Anfänger-Themen 7
C wo ist mein javax.mail? Java Basics - Anfänger-Themen 2
L JavaMail: javax.mail wird nicht gefunden Java Basics - Anfänger-Themen 2
F javax.imageio.ImageIO write methode Java Basics - Anfänger-Themen 11
B javax entpacken - aber wohin? Java Basics - Anfänger-Themen 2
M Comm-Api: Senden_Empfangen Java Basics - Anfänger-Themen 9
G NetBeans Comm.jar 2Klassen verbinden Java Basics - Anfänger-Themen 3
M Java Kompilieren über Package grenzen hinaus Java Basics - Anfänger-Themen 4
B Nach dem kompilieren werden Bilder nicht mehr gefunden Java Basics - Anfänger-Themen 10
S Kompilieren einer dekompiliertern JAR Java Basics - Anfänger-Themen 23
N Arbeitsspeicher nach kompilieren immer voller Java Basics - Anfänger-Themen 6
M Classpath Befehl zum Kompilieren um die Option classpath erweitern. Java Basics - Anfänger-Themen 5
L Java-Programm kompilieren Java Basics - Anfänger-Themen 24
J Java Datei lässt sich nicht kompilieren Java Basics - Anfänger-Themen 3
N Erste Schritte kompilieren tra lala Java Basics - Anfänger-Themen 2
J BlueJ - kompilieren - und wie weit kommt man mit BlueJ? Java Basics - Anfänger-Themen 4
D Übung Felder java Error kompilieren Java Basics - Anfänger-Themen 4
B Compiler-Fehler [Lejos] [RCX] Programm lässt sich nicht kompilieren Java Basics - Anfänger-Themen 5
J Kompilieren von HelloWorld Beispiel schlägt fehl Java Basics - Anfänger-Themen 7
P Compiler-Fehler .java Dateien kompilieren und .class Dateien zur .jar Java Basics - Anfänger-Themen 4
U kompilieren geht nicht wg. Formatierung wahrscheinlich Java Basics - Anfänger-Themen 7
P Programm zum kompilieren Java Basics - Anfänger-Themen 2
A Erste Schritte kompilieren Java Basics - Anfänger-Themen 14
V Compiler-Fehler Programm lässt sich nicht kompilieren Java Basics - Anfänger-Themen 22
J Kompilieren in anderern Java-Version? Java Basics - Anfänger-Themen 15
J Plattformunabhängigkeitstest fehlgeschlagen! Für ältere JRE kompilieren? Java Basics - Anfänger-Themen 11
J Java-Projekt kompilieren Java Basics - Anfänger-Themen 5
M Kompilieren Java Basics - Anfänger-Themen 7
J Probleme bei kompilieren ... Bitte um Hilfe Java Basics - Anfänger-Themen 27
D javac zum Kompilieren von mehreren Dateien Java Basics - Anfänger-Themen 6
C Source File bearbeiten und neu Kompilieren Java Basics - Anfänger-Themen 5
K Fehlermeldung beim kompilieren Java Basics - Anfänger-Themen 8
J Kompilieren mit Package funktioniert nicht Java Basics - Anfänger-Themen 40
E Input/Output IOException beim Kompilieren Java Basics - Anfänger-Themen 3
T Kompilieren Java Basics - Anfänger-Themen 4
L Öffnen des Programms nach kompilieren nicht möglich Java Basics - Anfänger-Themen 3
O ausgabe spinnt trotz erfolgreichem kompilieren Java Basics - Anfänger-Themen 2
S Beim kompilieren kommt Ant Build.Was ist das? Java Basics - Anfänger-Themen 8
S Problem beim Kompilieren - cannot find symbol - constructor() Java Basics - Anfänger-Themen 12
K Programm zum Kompilieren von java-Dateien Java Basics - Anfänger-Themen 17
M Kompilieren - Eclipse ja, Konsole nein Java Basics - Anfänger-Themen 15
M Keine Ausgabe nach erfolgreichem Kompilieren (javac, ubuntu) Java Basics - Anfänger-Themen 10
J problem (kann meinen Code nicht kompilieren) Java Basics - Anfänger-Themen 3
T Programm läßt sich nicht kompilieren Java Basics - Anfänger-Themen 4
H Problem beim kompilieren Java Basics - Anfänger-Themen 3
W Eclipse kompilieren und klasse von command ausführen Java Basics - Anfänger-Themen 18
J Applet mit Bibliotheken kompilieren Java Basics - Anfänger-Themen 6
L welchen fehler übersehe ich? ...kompilieren funkt. nicht Java Basics - Anfänger-Themen 23
R Quelltext einfügen und kompilieren Java Basics - Anfänger-Themen 4
Sebi Probleme beim Kompilieren Java Basics - Anfänger-Themen 11
B Java Datei unter Solaris kompilieren Java Basics - Anfänger-Themen 2
S Aufgabe gelöst, lässt sich aber nicht kompilieren Java Basics - Anfänger-Themen 3
Bloodredangel [gelöst] Kompilieren von .java-Dateien per javac Java Basics - Anfänger-Themen 5
P Pakete kompilieren.... Java Basics - Anfänger-Themen 2
E Code kompilieren geht aber ausführen nicht Java Basics - Anfänger-Themen 3
L Java ChatServer kompilieren/starten - aber wie? Java Basics - Anfänger-Themen 2
D Problem beim Kompilieren Java Basics - Anfänger-Themen 4
C Java kompilieren ? Java Basics - Anfänger-Themen 9
M 1.5er Klassen kompilieren mit 1.6er javac Java Basics - Anfänger-Themen 5
B Probleme beim Kompilieren. Java Basics - Anfänger-Themen 12
O Linux - Fehler beim kompilieren - HILFE Java Basics - Anfänger-Themen 4
J Aus einem Java Programm eine .java datei Kompilieren Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben