私はプロジェクトに取り組んでおり、1つの要件は、mainメソッドの2番目の引数が「/
」(Linuxの場合)で始まる場合、絶対パスと見なす必要があります(問題ではありません)が、「」で始まらない場合/
」の場合、クラスの現在の作業パスを取得し、指定された引数を追加する必要があります。
:私はいくつかの方法でクラス名を取得することができSystem.getProperty("java.class.path")
、new File(".")
およびgetCanonicalPath()
ように、と...
問題は、これはパッケージが保存されているディレクトリのみを提供することです。つまり、「.../project/this/is/package/name
」にクラスが保存されている場合は、「」のみが提供され/project/
、実際に存在するパッケージ名は無視され.class files
ます。
助言がありますか?
編集:これは演習の説明から取られた説明です
sourcedirは、絶対(「/」で始まる)またはプログラムの実行元からの相対値のいずれかです。
sourcedirは、mainメソッドに指定された引数です。どうすればそのパスを見つけることができますか?