{Kurung Kurawal}

Java, apakah aplikasi berada di dalam file jar ?

Post kali ini memberikan tutorial untuk mengetahui apakah aplikasi dijalankan dari dalam file .jar atau bukan.

Langsung saja ya,

file TheApplication.java

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/**
 * Created by Konglie on 9/12/2016.
 */
public class TheApplication {
    public static void main(String[] args){
        if(isInsideJar()){
            System.out.println("IS inside jar");
        } else {
            System.out.println("NOT inside jar");
        }
    }
 
    public static boolean isInsideJar(){
        try {
            return TheApplication.class
                    .getProtectionDomain().getCodeSource().getLocation()
                    .toURI().getPath().toLowerCase()
                    .endsWith(".jar");
        } catch (Exception e){
            return false;
        }
    }
}

Sederhananya, di dalam method isInsideJar itu mencoba mendapatkan lokasi dari main class yang dijalankan, apabila berada di dalam jar, maka tentu saja nama file nya akan berakhiran dengan “.jar”, itulah yang kita deteksi.

Dan outputnya adalah

Dari IDE (IntelliJ Idea)

Dijalankan dengan jar

Demikian, semoga berguna untuk kita semua.