JPackageスクリプトからJavaにコマンドラインパラメータを渡す

JPackageスクリプトからJavaにコマンドラインパラメータを渡す

インストールしましたラホタ- Javaで書かれたタイムトラッカー - Fedoraリポジトリから提供され、yumはファイルをインストールしますが、rachota.jarそこ/usr/share/javaにスクリプトも生成します/usr/bin/rachota。このスクリプトはjava直接呼び出されず、Rachotaを起動するために使用されます。

コマンドライン引数を/usr/bin/rachotaスクリプトに渡しますjava

スクリプトはJバッグプロジェクトは次のとおりです。

#!/bin/sh
#
# rachota script
# JPackage Project <http://www.jpackage.org/>

# Source functions library
_prefer_jre="true"
. /usr/share/java-utils/java-functions

# Source system prefs
if [ -f /etc/java/rachota.conf ] ; then
  . /etc/java/rachota.conf
fi

# Source user prefs
if [ -f $HOME/.rachotarc ] ; then
  . $HOME/.rachotarc
fi

# Configuration
MAIN_CLASS=org.cesilko.rachota.gui.MainWindow
BASE_FLAGS=""
BASE_OPTIONS=""
BASE_JARS="rachota"

# Set parameters
set_jvm
set_classpath $BASE_JARS
set_flags $BASE_FLAGS
set_options $BASE_OPTIONS

# Let's start
run "$@"

/etc/java/rachota.conf明らかにとを解析していますが、シェルスクリプトの経験は非常に限られており、引数を渡すためにファイルに何を入れるべきか$HOME/rachotarcわかりません。$HOME/.rachotarc

これは最終的に実行したいjavaコマンドです。

java -Duser.language=en -Duser.country=GB -jar /usr/share/java/rachota.jar

パラメータは自動的に渡されますが、パラメータも渡したいとjar思います。Duser.languageDuser.country

ベストアンサー1

重要な部分は/usr/share/java-utils/java-functions文書です。ただ見つけました。オンライン追加フラグをサポートしているようです。ファイルを見た後(run関数とset_flags関数が重要です)、ADDITIONAL_FLAGS次のコマンドを提供するだけで十分です。

ADDITIONAL_FLAGS="-Duser.language=en -Duser.country=GB" /usr/bin/rachota

デバッグするには、VERBOSE実行パラメータの詳細を印刷するように設定できます。

VERBOSE=1 /usr/bin/rachota

これらの設定を維持するには、$HOME/.rachotarcまたはで直接変数を設定することもできます。/etc/java/rachota.conf

おすすめ記事