2012-01-12 22 views
6

Yürütülmekte olan dosya adını almak mümkün mü? Ör. Bir Jar dosyası çalıştırıyorsam ve içimde dosya adını algılayabilen kod işlevselliği eklemek istiyorum, böylece bu jar yeniden adlandırılırsa, kod bunu algılayabilmelidir.Java'da dosya adı çalıştırılsın mı?

Geçerli dizindeki dosyaları taramaksızın bunu gerçekleştirme olasılığı var mı?

+0

ben dertmek istemiyorum Bunu mevcut PID kullanarak, bunun için bazı java'nın bulit olup olmadığını merak ediyorum? – Johnydep

+1

neden downvote? Benim sorum yasal. – Johnydep

+0

İlgili: http://stackoverflow.com/questions/320542/how-to-get-the-path-of-a-running-jar-file – jalopaba

cevap

4

bu deneyin başlatıldığı gösteren bazı değere sahip olmadığını kontrol edebilir: aslında

String path = Test.class.getProtectionDomain().getCodeSource().getLocation().getPath(); 
String decodedPath = URLDecoder.decode(path, "UTF-8"); 

http://www.rgagnon.com/javadetails/java-0300.html

http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html#getProtectionDomain()

http://docs.oracle.com/javase/7/docs/api/java/security/ProtectionDomain.html

+0

Tüm senaryolarda olmasa da, ancak kısmen işe yarıyor, Yukarıda tanımlanan yöntemlerin herhangi bir dökümantasyonu var mı? – Johnydep

+0

Tam olarak ne aradığım için teşekkürler :) – Johnydep

-2

System.getEnv() dosyası

+0

System.getenv() asla bu tür bilgileri gösterme. – Johnydep