0

特定のディレクトリまたは特定のディレクトリにあるファイルをチェックする方法は知っていますが、実行中の jar の外部にあるが、それと同じディレクトリにあるファイルをチェックする方法がわかりません: Test.jar - 実行 -> Test.file の場所を取得 Test.file

回答済み - ありがとうございます。

これはうまくいきます。

final Class<?> referenceClass = Client.class;
    final URL url = referenceClass.getProtectionDomain().getCodeSource().getLocation();
    try{
        final File jarPath = new File(url.toURI()).getParentFile();
        System.out.println(jarPath);
    } catch(final URISyntaxException e){
        // etc.
    }
4

3 に答える 3

1

ProtectionDomain考えられる解決策は、このスレッドを使用して提示されます: Loading a file relative to the running jar file

于 2013-08-01T11:50:54.067 に答える
1

createNewFile() 操作を使用して新しいファイルを作成し、そのファイルの場所を取得して、ファイルを再度削除できます。新しいファイルは、jar ファイルが実行されている場所と同じ場所に生成されます。

于 2013-08-01T11:35:52.823 に答える
0

JAR ファイルの場所は、その JAR ファイルClass.getProtectionDomain().getCodeSource().getLocation()内に存在することがわかっているすべてのクラスについて、 によって指定されます。

于 2013-08-01T11:49:12.043 に答える