JNotify APIを使用して、コンピューターでパスをリッスンしています。しかし、ファイル システムの監視は比較的低レベルの作業であるため、Linux、Mac、Windows などのオペレーティング システムごとに異なるライブラリが使用されます。32、64ビットでも違いがあります。私の質問は、使用するライブラリを選択する方法です。それらをすべてビルド パスに追加すると、エラーが発生します。いくつかの設定が必要だと思いますが、方法がわかりません:/どんな助けもいただければ幸いです。ところで、私はEclipseでJavaを使用しています。
質問する
105 次
4 に答える
0
System.getProperty("os.name");
于 2013-01-18T14:29:41.747 に答える
0
Maven を使用すると、ターゲットごとにプロファイルを作成し、各ターゲット OS を特定の .jar ファイルでビルドできます。
プラットフォームごとに単一のバイナリを作成しようとするのは複雑なことです。アプリケーションが複雑にならないように、ターゲット OS ごとに個別にディストリビューションを作成します。
于 2013-01-18T14:29:49.827 に答える
0
os.arch/os.name システム プロパティを使用して、実行しているプラットフォームを確認できます。詳細については、同様の質問に対するこの回答を参照してください。
正しいライブラリのロードに関しては、各プラットフォーム固有のクラスを独自の jar にパッケージ化し、それらを動的にロードできます。その例については、この質問を参照してください。
于 2013-01-18T14:31:34.023 に答える
0
os.arch
、 、os.name
などのシステム レベルのプロパティを使用できますos.version
。
String architecture = System.getProperty("os.arch");
String os = System.getProperty("os.name");
私のマシンでは、それぞれ「amd64」と「Windows 7」を返します。Linuxとfile.separator
Mac ではスラッシュ ("/") を返し、Windows ではバックスラッシュ ("\")/
于 2013-01-18T14:34:01.067 に答える