メモ帳は起動できたのですが、あるゲームの補助ツールを java から起動させようとしています。
その補助ツールは起動できるのですが、設定ファイルを読み込めないとエラーが出力されます。
そこで、この補助ツールに作業ディレクトリを設定したいので、
APIを調べたのですがわかりませんでした。
以下ソースコードとエラーメッセージを載せておきます。
import java.io.*;
public class Main7_2 {
public static void main( String[] args ) {
// ここは成功(フルパス指定)
ProcessBuilder pb = new ProcessBuilder( "C:\\Windows\\System32\\notepad.exe", "C:\\Users\\owner\\Desktop\\あああ.txt" );
try {
pb.start();
} catch ( Exception e ){
System.out.println( "例外が発生しました。" + e.toString() );
}
// パターン2
// ここは失敗(カレントディレクトリを指定しないと設定ファイルが読み込めない )
ProcessBuilder pb2 = new ProcessBuilder( "C:\\Users\\owner\\Documents\\001 ツール\\023_DP_0.55.7\\DOL_PLUS1.exe" );
File dir = pb2.directory();
try {
System.out.println( "dir:" + dir.getName() ); // << ここでもエラー
pb2.start();
} catch( Exception e ) {
System.out.println( "パターン2で例外が発生しました。" + e.toString() );
}
}
}
C:\Users\owner\Docume....jcpad231\ソースコード> java Main7_2
パターン2で例外が発生しました。java.lang.NullPointerException
-- Press any key to exit (Input "c" to continue) --
---- 20行目をコメントアウトすると
補助ツールは起動するのですが、設定ファイルの読み込みに失敗しました。
とエラーメッセージが表示され終了する。
------ 期待していること
補助ツールを、作業ディレクトリを指定して起動させ、設定ファイルを読み込ませる。