2016-04-26 20 views
0

私はJavaとstackoverflowに慣れていません。サーバから共有フォルダからjarファイルを実行すると、jarファイルはサーバからファイルを読み込む必要があります

問題: マシン(サーバーA)の環境変数からファイルを読み取っているjarファイルがあります。 リモートサーバーAでこのjarを実行すると、ファイルの読み込みはOKです。 は、しかし、私は、「javaの-jar」を共有フォルダにバッチファイル用のリモートサーバーA.

に必要としないをそれにアクセスできるようにするには、このjarファイルや共有フォルダにそれを実行するためのバッチファイルを置くために必要な%〜DP0バッチファイルにjarファイル名の前に%〜DP0の追加MYJAR.jar」 は私が共有フォルダにjarファイルを呼び出すことができました。[以下のリンクソース]

Can I run a jar file from shared folder of remote system just by double clicking from my system?

しかし、jarファイルを実行していますjarはサーバーAでファイルの読み込みを検出できませんでした。ファイルを読むときのコードは次のとおりです。

Properties prop2 = new Properties(); 
String propFile=System.getenv("OTHERS_HOME") + "\\conf\\FILE_TO_READ.txt"; 

jarが実行されているときにカレントディレクトリを印刷するとき。 サーバーAへのリモートアクセスがE:\ ISO_Testerになったとき。これは正しいパスです。

しかし、サーバAの共有フォルダから私のマシンで実行しているとき、私はCました:\ Windowsの私は私のローカルマシンからの代わりに、サーバーAのだと思います

+0

「マシンの環境変数から読み取っているジャー」とは何ですか? 「私はリモートサーバーA」とはどういう意味ですか? – EJP

+0

JarはサーバーAにあり、サーバーAからファイルを読み込んでいます(上記のコード)。私は共有フォルダ経由でjarにアクセスするのではなく、サーバーAへのリモートアクセス(リモートデスクトップ接続)を意味していました。 –

答えて

0

最良の部分は、あなたがあるべきであるということですサーバAからJARファイルと必要なファイルを共有し、ファイルの相対パスに対してコードを書込み/実行する

これは、バッチがサーバAのプロパティにアクセスするのではなく、実行中のマシン

詳細はこちらのリンクを参照してください。 Get remote env vars using Windows Powershell

関連する問題