Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ком-порт, javax.comm.* , Linux 
:(
    Опции темы
Bulat
Дата 26.4.2007, 08:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


татарский Нео
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 22.3.2006
Где: Альметьевск

Репутация: 4
Всего: 57



эксепшн:

Цитата

Error loading LinuxSerialParallel: java.lang.UnsatisfiedLinkError: no LinuxSerialParallel in java.library.path
Exception in thread "main" java.lang.ExceptionInInitializerError
        at CommPort.main(CommPort.java:7)
Caused by: java.lang.NullPointerException
        at javax.comm.CommPortIdentifier.findConfFile(CommPortIdentifier.java:199)
        at javax.comm.CommPortIdentifier.<clinit>(CommPortIdentifier.java:117)
        ... 1 more


 smile 

Кэширование библиотек сделал


--------------------
менеджер по кодеврайтингу  smile 
PM MAIL WWW   Вверх
Bulat
Дата 28.4.2007, 08:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


татарский Нео
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 22.3.2006
Где: Альметьевск

Репутация: 4
Всего: 57



Неужели никаких предположений нет. Тут дело то за какой-то ерундой, буквально за мелочью, но вот очень важной мелочью smile 


--------------------
менеджер по кодеврайтингу  smile 
PM MAIL WWW   Вверх
LSD
Дата 29.4.2007, 10:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 210
Всего: 538



Ты проверял, библиотека загружается?


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
Bulat
Дата 2.5.2007, 08:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


татарский Нео
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 22.3.2006
Где: Альметьевск

Репутация: 4
Всего: 57



а не подскажешь как это проверить, в линуксе разбираюсь похужечем в яве smile


--------------------
менеджер по кодеврайтингу  smile 
PM MAIL WWW   Вверх
Metal_Heart
Дата 2.5.2007, 16:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


а почему бы и нет?
**


Профиль
Группа: Участник
Сообщений: 728
Регистрация: 31.3.2005
Где: Москва

Репутация: 4
Всего: 12



Bulat, сначала проверь, лежат ли библы в "<jre_home>/lib/ext"
если нет, то просто попробуй для начала сделать симлинки этих библ в корень своего проекта...


--------------------
 не стыдно учиться, а стыдно не учиться 
PM ICQ   Вверх
Bulat
Дата 3.5.2007, 08:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


татарский Нео
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 22.3.2006
Где: Альметьевск

Репутация: 4
Всего: 57



Metal_Heart, пасиба, но как быть с основным эксепшном?

Цитата

Exception in thread "main" java.lang.ExceptionInInitializerError
        at CommPort.main(CommPort.java:7)
Caused by: java.lang.NullPointerException
        at javax.comm.CommPortIdentifier.findConfFile(CommPortIdentifier.java:199)
        at javax.comm.CommPortIdentifier.<clinit>(CommPortIdentifier.java:117)
        ... 1 more


Код

import javax.comm.*;
import java.util.*;

public class CommPort {

    public static void main(String[] args) {
        Enumeration portList = CommPortIdentifier.getPortIdentifiers();

        while (portList.hasMoreElements()) {
            CommPortIdentifier portId = (CommPortIdentifier) portList.nextElement();
            System.out.println(portId);

            /*if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {
                System.out.println(portId.getName());
                if (portId.getName().equals("COM2")) {
                    Terminal terminal = new Termianl(portID);
                }
            }*/
        }
    }

}


такая же ерунда

Цитата

Exception in thread "main" java.lang.ExceptionInInitializerError
        at TestEnumeration.getAvailableSerialPorts(TestEnumeration.java:19)
        at TestEnumeration.main(TestEnumeration.java:10)
Caused by: java.lang.NullPointerException
        at javax.comm.CommPortIdentifier.findConfFile(CommPortIdentifier.java:199)
        at javax.comm.CommPortIdentifier.<clinit>(CommPortIdentifier.java:117)
        ... 2 more


Код

import javax.comm.CommPortIdentifier;
import javax.comm.SerialPort;
import javax.comm.PortInUseException;
import java.util.Enumeration;
import java.util.Vector; 

public class TestEnumeration { 

    public static void main(String args[]) {
        Vector portslist = TestEnumeration.getAvailableSerialPorts();
        System.out.println("found "+portslist.size()+" open ports");
    }

    public static Vector getAvailableSerialPorts() {
        CommPortIdentifier pId=null;
        SerialPort sPort=null;
        Enumeration pList=null;
        boolean foundport=false;

        pList = CommPortIdentifier.getPortIdentifiers();

        String port=null;
        Vector ports=new Vector();

        if(!pList.hasMoreElements()) {
            System.err.print("warning: no ports found - "); 
            System.err.println("make sure javax.comm.properties file is found");
            return ports;
        }

        while (pList.hasMoreElements()) {
            pId = (CommPortIdentifier) pList.nextElement();
            if (pId.getPortType() == CommPortIdentifier.PORT_SERIAL) {
                foundport=true;
                try {
                    sPort = (SerialPort)pId.open("serialport", 1000);                    
                } catch (PortInUseException e) {
                    foundport=false;
                    System.out.println(pId.getName()+ " is closed");
                } finally {
                    if(sPort!=null) { 
                        try { sPort.close(); } catch(Exception e) {}
                    }
                    if(foundport) {
                        ports.add(pId.getName());
                        System.out.println(pId.getName()+ " is open");
                    }
                }
            }
        }

        return ports;
    }

}



--------------------
менеджер по кодеврайтингу  smile 
PM MAIL WWW   Вверх
Metal_Heart
Дата 3.5.2007, 09:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


а почему бы и нет?
**


Профиль
Группа: Участник
Сообщений: 728
Регистрация: 31.3.2005
Где: Москва

Репутация: 4
Всего: 12



Bulat, также проверь, дозволено ли тебе работать с портами?


т.е. в suse это так:

YaST -> Security & Users -> User Managment

выбрал требуемого пользователя (т.е. себя) -> редактировать
в закладке "Подробности" добавил группу: uucp 

А у тебя какой дистр?

Это сообщение отредактировал(а) Metal_Heart - 3.5.2007, 09:22


--------------------
 не стыдно учиться, а стыдно не учиться 
PM ICQ   Вверх
Bulat
Дата 3.5.2007, 09:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


татарский Нео
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 22.3.2006
Где: Альметьевск

Репутация: 4
Всего: 57



Вообще я работаю под рутом, не думаю что этому юзеру этого нельзя


--------------------
менеджер по кодеврайтингу  smile 
PM MAIL WWW   Вверх
Metal_Heart
Дата 3.5.2007, 10:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


а почему бы и нет?
**


Профиль
Группа: Участник
Сообщений: 728
Регистрация: 31.3.2005
Где: Москва

Репутация: 4
Всего: 12



Зря ты так! С огнем играешь!

проверь наличие и содержание файлика "javax.comm.properties"

вот мой, для примера:

Присоединённый файл ( Кол-во скачиваний: 15 )
Присоединённый файл  javax.comm.properties 1,52 Kb


--------------------
 не стыдно учиться, а стыдно не учиться 
PM ICQ   Вверх
Bulat
Дата 3.5.2007, 10:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


татарский Нео
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 22.3.2006
Где: Альметьевск

Репутация: 4
Всего: 57



имеется с аналогичным содержанием


--------------------
менеджер по кодеврайтингу  smile 
PM MAIL WWW   Вверх
LSD
Дата 3.5.2007, 10:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 210
Всего: 538



Попробуй такой код:
Код
System.loadLibrary("LinuxSerialParallel");

если выдаст ошибку значит система не может найти библиотеку.

Тогда смотришь какие есть библиотеки в составе javax.comm API (это файлы с расширением so) и кидаешь их в один из каталогов указанных в
Код
java.library.path

или ключом запуска -Djava.library.path=... добавляешь туда нужный каталог.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
Bulat
Дата 7.5.2007, 16:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


татарский Нео
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 22.3.2006
Где: Альметьевск

Репутация: 4
Всего: 57



мля...(сорри)

но чего-то это меня выводит из себя, уже напихал этих библиотек во все директории, и с ключом запустить пытался не хочет.....

ежели не трудно ссылочку подбрости как с этими библами для явы работать, или поямните на пальцах как для ламера  smile 

P.S. нашел интересную директорию ..../java/jdk1.5.0_09/jre/lib/i386/, тута куча подобных библов


--------------------
менеджер по кодеврайтингу  smile 
PM MAIL WWW   Вверх
Metal_Heart
Дата 7.5.2007, 16:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


а почему бы и нет?
**


Профиль
Группа: Участник
Сообщений: 728
Регистрация: 31.3.2005
Где: Москва

Репутация: 4
Всего: 12



Bulat, будь добр, ответь на вопрос LSD


--------------------
 не стыдно учиться, а стыдно не учиться 
PM ICQ   Вверх
LSD
Дата 7.5.2007, 20:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 210
Всего: 538



Ensure that the library libLinuxSerialParallel.so can be loaded.   You can do this

either by adding libLinuxSerialParallel.so to the environment LD_LIBRARY_PATH  or
by copying libLinuxSerialParallel.so to /usr/lib.
 

Example: Assuming your current working directory is where you extracted the distribution,

     % setenv LD_LIBRARY_PATH `pwd`:$LD_LIBRARY_PATH

      or

      $ export LD_LIBRARY_PATH=$PWD:$LD_LIBRARY_PATH

or, if you have administrative privileges on your machine,

     % cp libLinuxSerialParallel.so /usr/lib


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1105 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.