今日は、スクリプトを使用して Java プログラムを実行する方法を研究するのにほぼ 1 日を費やしましたが、ついにそれを共有させてください。
(1) Linux 上で .sh ファイルを作成します。
(2) ファイルの内容は以下のとおりです。
次のようにコードをコピーします。
#!/bin/sh //bash ファイルのヘッダー
APP_HOME=/home/blmcrm/crm/A //実行する Java ファイル内の bin ファイルの前のディレクトリは /home/blmcrm/crm/A/bin/blm... (ディレクトリには含まれません)以下)(書いています)、要するに、bin ディレクトリに jar パッケージがあるので、bin ディレクトリの前の部分を書きます。もしそれが bin ディレクトリにない場合は、同様に変更するだけです。
CLASSPATH=$APP_HOME/bin //bin ディレクトリは、もちろん、jar パッケージが含まれるディレクトリです。
for i in "$APP_HOME"/bin/*.jar //すべての jar パッケージを紹介します。ここで使用されるループは、もちろん、この形式に従って 1 つずつ記述することもできます
する
CLASSPATH="$CLASSPATH":"$i" //環境変数はこの形式です
終わり
import CLASSPATH=.:$CLASSPATH //これを書かないとメインクラスが見つからないと言われる可能性があります。
echo ${CLASSPATH} //環境変数を出力します。記述する必要はありません
java -Xms50m -Xmx250m org.gdh.blm.exec.Syslog_csv
exit (end) // Java プログラムを実行します。ここで、-Xms50m -Xmx250m は実行中のメモリ設定で、次は bin ディレクトリから .class へのパスです。私の場合は Syslog_csv.class なので、最後のものは Syslog_csv です。
詳細かどうかはわかりませんが、環境変数は常にネットで調べたものに従っています。何が起こっているのか理解できません。実際、環境変数は実行する Java プログラムの場所です。ターミナルで sh aa.sh と入力します。