- PR -

Java(tm) Communication API 3.0 Update 1にてError loading javax.comm.properties null が出る

1
投稿者投稿内容
ひでっぷ
会議室デビュー日: 2003/12/09
投稿数: 17
投稿日時: 2005-11-29 21:37
現在不可解な現象が起きいます。同様の現象が起きている方もしくは解消方法のわかる方がいましたらご教授ください。

OS:TurboLinux 10 desktop
Java Version:j2sdk1.4.2 j2sdk1.4.1 両方で
開発環境:JBuilder9

現在サンのサイトにあるJava(tm) Communication API 3.0 Update 1のプラットフォームにLinuxが入っていましたので、ダウンロードし、設定を行いました。

添付されているSerialDemoは問題なく作動いたしました。
開発環境下でのデバッグモードでの動作も問題ありませんでした。

開発したプログラムをjarファイルにし、起動しようとすると以下のエラーが出ます。
コード:
javax.comm.: Error loading javax.comm.properties!
null

java.io.IOException: javax.comm.: platform driver class name = null
                                 (Check 'driver' property in javax.comm.properties)



実は前回も同じ様な現象が起きたことがあるのですが、なぜか知らない間に直ってしまっていまして(汗 
そのままほったらかしにしていました・・・。

最悪の場合RXTXのドライバを使用すればいいのですが、なんだか気持ちが悪くて・・・。(サンがわざわざ自分のサイトで公開しているのに使えないなんてというやりきれない思いが

googleでも調べてみましたが、有効な回答は見つかりませんでした。
どなたか使用されている方は見えませんでしょうか?
tama
会議室デビュー日: 2005/08/24
投稿数: 16
お住まい・勤務地: 焼売の国。ベイブリッジ見えません。
投稿日時: 2005-11-30 09:13
JAVA_HOME/jre/lib/に、javax.comm.propertiesはありますか?
それがロードできないといっているようなのですが。


[ メッセージ編集済み 編集者: tama 編集日時 2005-11-30 09:16 ]
ひでっぷ
会議室デビュー日: 2003/12/09
投稿数: 17
投稿日時: 2005-11-30 10:00
tamaさん、ご返答ありがとうございます。

引用:
JAVA_HOME/jre/lib/に、javax.comm.propertiesはありますか?
それがロードできないといっているようなのですが。



javax.comm.propertiesがJAVA_HOME/jre/lib/に入っていることは確認しました。
また同じJavaでJava Communication APIに添付されていたSerialDemo.javaや開発環境下でのプログラムできちんと通信していることからも問題ないと考えています。

Java Forumsで同様の問題についての記載がありましたが、うまく解決していないようでした・・・。
もしかしたら私のつたない英語で勘違いをしてるかもしれませんが
portulaca
会議室デビュー日: 2005/11/30
投稿数: 12
投稿日時: 2005-11-30 10:35
件のAPIは使ったことがないのですが...
javax.comm.properties に書かれた内容が問題ないとして、
・ドライバを含んだクラスがロードできなかった
・ネイティブコードを含む共有ライブラリ(*.so)がロードできなかった
なども考えられますね。
動く環境とそうでない環境の違いをよく調べてみてください。
ひでっぷ
会議室デビュー日: 2003/12/09
投稿数: 17
投稿日時: 2005-11-30 11:07
portulacaさん、tamaさんご返答ありがとうございます。
あれからいろいろ調べましたが動くようになりました。

jarファイルが置かれているディレクトリを/hogedirとすると
/hogedirまで下りた後に

コード:
[root@localhost hogedir]/usr/local/j2sdk1.4.2/bin/java -jar hogehoge.jar


で、シリアルポートオープン時にエラーがでていました。

コマンドを以下の様に変えました
コード:
[root@localhost hogeedir]/usr/local/j2sdk1.4.2/bin/java -jar /hogedir/hogehoge.jar 



/hogedirまで下りてきてるので相対パスで指定していたのですが、絶対パスに変えたところ動くようになりました。
Javaは最初から絶対パスで指定しています。

シリアルデモの場合は相対パスで問題なく動いたのですが・・・。

ちょっと納得がいかないのでもう少し色々調べてみようと思います。
ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)