summaryrefslogtreecommitdiff
path: root/share/java-common.sh
blob: c0db8584b6ef9c0ad72c6a94d348b89e4871d860 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
function jvm_scan_file() {
    file="$1"

    grep -v '#' "$file" | while read jvm; do
        if [ -n "$jvm" -a -x "$jvm/bin/java" ]; then
            echo -n $jvm
            return
        fi
    done
}

function jvm_find() {
    local jvm

    if [ -n "$JAVA_HOME" ]; then
        jvm="$JAVA_HOME"
    fi

    for file in \
        "$HOME/.jvm.d/$1" \
        "$HOME/.jvm" \
        "/etc/jvm.d/$1" \
        "/etc/jvm"; do \
        if [ -z "$jvm" ]; then
            if [ -r "$file" ]; then
                jvm="$(jvm_scan_file "$file")"
            fi
        fi
    done

    echo -n "$jvm"
}

function jvm_config() {
    echo JAVA_HOME="$(jvm_find "$1")"
}