シェルスクリプトファイル名をコマンドライン引数java -jar /test.shに渡すとエラーが発生します。エラー:jarfile /test.shにアクセスできません。

シェルスクリプトファイル名をコマンドライン引数java -jar /test.shに渡すとエラーが発生します。エラー:jarfile /test.shにアクセスできません。
java -jar /test.sh --name trigger

Error: Unable to access jarfile /test.sh

test.sh ファイルには以下が含まれます。

#!/bin/sh
jar_name="-Dspring.config.location=application-test.properties somejarFileVersion_1.0" 
echo ${jar_name}

ベストアンサー1

そこに2つの質問があります。

  1. javaは「test.sh」というjarファイルを開こうとします。しかし、ファイルはjarではなくシェルスクリプトです。あなたが望むもの出力jar ファイルの名前として使用するシェルスクリプトの名前です。したがって、次のことを行う必要があります。
java -jar $(bash ./test.sh) --name trigger
  1. また、スクリプトは有効なjarファイル名を生成しません。 Javaオプションとjarファイル名を印刷します。これら-D....を取り出して元のコマンドに入れる必要があります。

おすすめ記事