問題タブ [rxtx]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
classpath - Windows での RxTx のインストール java.lang.NoClassDefFoundError: gnu/io/CommPort
フォルダーに入れrxtxcomm.jar
ましたが、まだこのフォルダーはグローバルクラスパスに自動的に取り込まれませんか?jre/lib/ext
NoClassDefFoundError
ありがとう
java - 現在のポート番号を取得する方法。私のデバイスが接続されている...?
デバイスからのイベントをデータベースに取得して保存する必要があるアプリケーションを Java (Swing) で開発しようとしています。使用中のすべてのポートを見つけるために RXTX を使用しましたが、自分のデバイスが接続されているポートだけが必要です。私は多作なドライバーを使用しました。
java - Mac OS で rxtx を実行できない
Mac (OSX 10.8) で Java 用の rxtx JAR ファイルを使用しようとしています。RXTXcomm.jar
、librxtxSerial.jnilib
および付随.so
するファイルを にインストールしました/Library/Java/Extensions
。サンプルコードを実行しようとしています: http://arduino.cc/playground/Interfacing/Java
cannot find symbol
しかし、大量のエラーメッセージ が表示されるため、何かが欠けているようです。
ここにいくつかあります:
私のマシンにインストールされている Java 内で欠けている基本的なものはありますか? Xcode 4.5 をインストールしたばかりなので、この単純なコードを実行するためのすべてが揃っていると思います。
ライブラリを同じディレクトリに配置するように頼まれました。同封されているのは、実行中ls
のjavac
コマンドです。
これを機能させるために別の JAR が不足しているということですか? にこれらのクラスがありませんRXTXcomm.jar
。
java - jvmのクラッシュを回避したり、hs_err_pid.logファイルを非表示にしたりするために、終了する前にdllrxtxをアンロードします。
さて、私はrxtxSerial.dllを使用するプロジェクトに取り組んでいます(ちなみに非常にバグがあります)。
とにかく、GUIをよりユーザーフレンドリーにするために変更を加えました。最初はプログラムがメインウィンドウに表示され、ユーザーが勤務先の会社によって設計された特定のデバイスを監視できる他のフレームを開くことができます。したがって、ユーザーがホールプログラムと、開いているウィンドウを閉じたいと思ったときに、開いているウィンドウを自分で閉じてからプログラムを閉じるように求めるダイアログが表示されたので、それは本当に醜いので、私は考えました。それが私が作ったものです:
シリアル通信を使用するが開かれたときJDialog
に、ユーザーが終了前よりもプログラムを閉じるように促した場合に備えて、参照を保存します。プログラムは次のコードを実行して、それぞれのリスナーがシリアルからの読み取りを停止するように呼び出されるようにします。ポート:
ユーザーがダイアログを閉じてもプログラムはクラッシュしないためWindowListener
、通信のシャットダウンを担当するsに問題はありません。また、オンラインウィンドウが開いているときに閉じるプロンプトが表示されるとクラッシュすることがあります(シリアル通信の側面)。 、実際には、クラッシュ自体はユーザーには表示されず(プログラムのフォルダー、hs_err_pid.logファイルを調べた場合)、オンラインウィンドウでのクローズの約20%が発生します。hs_errのクラッシュは次のようなsiginfo: ExceptionCode=0xc0000005, writing address 0x17adfa88
ものです。つまり、dllが既に閉じられた後にjavaのメモリに書き込もうとして、jvmがクラッシュするということです(間違っている場合は修正してください)。
私が欲しいのは、それらのエラーログファイルを生成しない方法です。問題を修正するか、可能であれば答えがそうではない場合は、それらのファイルを非表示にする方法を作成できます。
私が考えた修正の1つは、jvm自体をシャットダウンする前にdllを強制的にアンロードするか、dllを「要求」してアンロードし、アンロードされるまで待つことです。
何か案は?
前もって感謝します。
java - 仮想ボックスのJavaでシリアルポートを開くとエラーが返される
仮想ボックスでUbuntu 12.04を使用しており、最初にjavax.commとrxtxでシリアル通信を試みました。どちらのアプローチでも、 getPortIdentifiers().toString() は「gnu.io.CommPortEnumerator@20d10a」を返すだけで、使用可能なポートの実際のリストは返しません。
何か案は?
java - Java アプリケーションは Eclipse で実行されますが、Jar はシリアル ポートを検出できません
Eclipse で実行するアプリケーションがあります。RxTx コードを使用してシリアル ポートにアクセスします。アプリケーションは CommPortIdentifier を使用して、JComboBox に追加するポートのリストを設定します。これはすべてEclipseで正常に機能します。
そのアプリケーションを Jar ファイルから実行すると、エラーなしで実行されますが、シリアル ポートを使用しようとして JComboBox が空になると停止します (None Selected を除く)。Jar をどのようにデバッグしますか? RxTx ライブラリが何らかの理由で含まれていませんでしたか?
java - Java SerialPort 書き込みで CPU 使用率が 100% に上昇
〜150台のコンピューター(それぞれ同じ構成)のWinXPでSwing GUIアプリケーションを実行しています。
しかし、そのうちのいくつか (5 など) では、アプリケーションが RXTX (pos プリンター) 経由でシリアル ポートと通信しようとすると、Java CPU 使用率がほぼ 100% まで上昇し、マシン全体がブロックされます。
このシリアル ポートへの書き込みは、特定のスレッドで行われます。それらの1つは次のようになります。
書く前に最初はクエリに問題があると思っていましたが、私のアプリケーションは他のスレッドで多くのクエリを実行しており、そのような問題はありません。
これらのコンピューターでは、印刷時間は可変です (マシンがブロックされている間、最大 10 分)。他のコンピュータでは、CPU 使用率を上げずに 2 秒で印刷が完了します。
この問題がどこから来るのか、何か考えはありますか?
java - Mac 上の RxTx - シリアル ポートは既に使用されています
RXTXをMac にインストールしました。シリアルポートを開こうとすると、Java JAR プログラムと Arduino ソフトウェアの両方が Arduino を USB モデムとして認識します。どちらも「不明なユーザー」と主張しています。私はrxtxcomm.jar
Java拡張機能を持っています。
これらのいずれかを機能させるにはどうすればよいですか?
java - javaを使ってRS-232C機器のデータを受信する
最近、USB バーコード スキャナーを購入しました。3 つの異なるインターフェイス選択オプションがあります。
- RS-232C
- USB
- ワンドエミュレーション
要件は、Java (Rxtx API) の助けを借りて RS-232C インターフェイスを使用して、スキャンされたバーコードを受信することだけです。私の知る限り、デバイスとのやり取りを開始するには、RXTX で COM ポートを定義する必要があります。
しかし問題は、RS-232C インターフェイスで使用しているときに、その COM ポートを見つけることができないことです。
RS-232C ポートとの通信中に不足しているものはありますか? ポート番号を確認するにはどうすればよいですか?
これで私を助けてください。
更新:提案されたように、以下のコードを使用して(JSSCを使用して)すべてのシリアルポートについてシステムをスキャンしました
注意すべき点: バーコード スキャナーを接続してスキャナーを取り外しても、上記のコードで取得したポート リストに変更はありません。
出力: COM3 COM11 COM18 COM32 COM33 COM34 COM35 COM36 COM37 COM38 COM39 COM40 COM42 COM45 COM52 COM53 COM59 COM60 COM61 COM62 COM63
出力の後、次のコードを使用して、上記の各ポートを 1 つずつリッスンしようとしました。
jssc.SerialPort をインポートします。jssc.SerialPortException をインポートします。
パブリック クラス メイン {
ポートがビジーであるか、出力がありません (その間、バーコード スキャナーを使用してスキャンを続けました)