Serial port javax.comm problem
3 отговора
168 прегледа
Serial port javax.comm problem
Problemam mi e slednia: izpolzvam edin i sa6t kod i na razli4ni ma6ini. Pri laptop Toshiba uspiawam da otvoria seriennia port, no pri PC Acer y HP ne uspiavam vapreki 4e v bios sa aktivirani COM1 i COM2 i mi markira na catch: NoSuchPortException. Eto 4ast ot koda:
import java.util.*;
import javax.comm.*;
import java.io.*;
public class Prb_Status {
public int[] status() {
int[] a = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
SerialPort serialPort = null;
OutputStream outputStream = null;
InputStream inputStream = null;
try {
serialPort = (SerialPort)CommPortIdentifier.getPortIdentifier("COM1").open("COM1", 2000);
} catch (PortInUseException piue) {
System.out.println("Exception : Port in use");
} catch (NoSuchPortException nspe) {
System.out.println("Exception : No such port");
}
import java.util.*;
import javax.comm.*;
import java.io.*;
public class Prb_Status {
public int[] status() {
int[] a = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
SerialPort serialPort = null;
OutputStream outputStream = null;
InputStream inputStream = null;
try {
serialPort = (SerialPort)CommPortIdentifier.getPortIdentifier("COM1").open("COM1", 2000);
} catch (PortInUseException piue) {
System.out.println("Exception : Port in use");
} catch (NoSuchPortException nspe) {
System.out.println("Exception : No such port");
}
Re: Serial port javax.comm problem
javax.comm имплементацията на Sun ли ползваш?
Като за начало пробвай да разпечаташ всички налични серийни портове. Ако не излезе нищо, най-вероятно не ти е инсталиран comm пакета като хората, или нещо не го кефи как си го инсталирал - което понякога може да се случи дори и да си направил всичко стъпка по стъпка от документацията. Обикновено проблемът е, че не успява да отвори javax.comm.properties. Това се проверява най-лесно като зададеш директно при стартиране VM-то -DDriver=com.sun.comm.Win32Driver - след това би трябвало работи като хората.
Като за начало пробвай да разпечаташ всички налични серийни портове. Ако не излезе нищо, най-вероятно не ти е инсталиран comm пакета като хората, или нещо не го кефи как си го инсталирал - което понякога може да се случи дори и да си направил всичко стъпка по стъпка от документацията. Обикновено проблемът е, че не успява да отвори javax.comm.properties. Това се проверява най-лесно като зададеш директно при стартиране VM-то -DDriver=com.sun.comm.Win32Driver - след това би трябвало работи като хората.
Re: Serial port javax.comm problem
Кажи поне с кое JDK си и с коя OS
Както вероятно знаеш COMМ support-a НЕ Е част от JSDK-то - инсталира се допълнително като за различните OS има някои специфики.
1.Linux -Sun имат отскоро(от JDK 5.0) собствена поддръжка за Linux системи(доскоро се правеше с RXTX driver който се препоръчва от Sun но все пак не беше техен - и съответно си измиваха ръцете ако нещо се ебава).
2.Win & SOlaris - имали са си винаги support от Sun.
Прочети хубаво install-а
- javax.comm.properties дали си е на мястото
- comm.jar дали ти е в CLASSPATH на Java
- дали съответния OS-specific libLinuxSerialParallel.so си е на мястото
И изобщо енумерирай всички портове и дебугвай докато си сигурен че се открива на съответната машина и чак тогава минавай нататък.
Както вероятно знаеш COMМ support-a НЕ Е част от JSDK-то - инсталира се допълнително като за различните OS има някои специфики.
1.Linux -Sun имат отскоро(от JDK 5.0) собствена поддръжка за Linux системи(доскоро се правеше с RXTX driver който се препоръчва от Sun но все пак не беше техен - и съответно си измиваха ръцете ако нещо се ебава).
2.Win & SOlaris - имали са си винаги support от Sun.
Прочети хубаво install-а
- javax.comm.properties дали си е на мястото
- comm.jar дали ти е в CLASSPATH на Java
- дали съответния OS-specific libLinuxSerialParallel.so си е на мястото
И изобщо енумерирай всички портове и дебугвай докато си сигурен че се открива на съответната машина и чак тогава минавай нататък.
Re: Serial port javax.comm problem
Blagodaria vi. Razre6ih problema (kato postavih javax.comm.properties v sdk/lib, sdk/jre/lib, jre/lib).
Spored ReadMe s sdk/lib e dostata4no no v moia slu4ai ne.
Spored ReadMe s sdk/lib e dostata4no no v moia slu4ai ne.