1

コマンドラインからJavaアプリケーションを起動するとき、スクリプトを呼び出す前に、コンソールがファイルシステム内にあった場所を知りたいです。基本的にJavaアプリケーション内から自分のpwdを知りたいのですが、これは可能ですか?System.getProperty( "")に何も表示されません。user.dirプロパティは機能しません。これは、Eclipseプロジェクトの.projectファイルがある場所を示すだけです。

os.getcwd()を使用してPythonスクリプト内で正しいパスを取得することはできますが、そのパスをJavaプログラムに取得する方法をまだ理解できません。

4

4 に答える 4

3

これを試して:

  File f = new File(".");
    f.getCanonicalPath(); // returns the path you are looking for

また、使用することができます:

System.getProperty("user.dir")

次の質問には、役立つと思われるいくつかの良い答えがあります。 アプリケーションのパスを取得する

于 2012-04-19T19:43:44.113 に答える
1

私は通常これを使用します:

System.out.println(getClass().getClassLoader().getResource(".")
                .getPath());

@kevingreenが提案するのと同じ結果を返します

于 2012-04-19T20:06:10.947 に答える
1

これを試して:

CodeSource cs = getClass().getProtectionDomain().getCodeSource();

それでcs.getLocation();

それが実行時の障害者になります。

ED:CodeSourceはこのライブラリの一部です:import java.security.CodeSource;

于 2012-04-19T19:42:17.997 に答える
-2

これを試して:

System.getProperty("user.home")
于 2012-04-19T19:44:02.173 に答える