SSH経由でtestng.xmlを実行したときに権限が拒否されました。

SSH経由でtestng.xmlを実行したときに権限が拒否されました。

添付のスクリーンショットを参照してください。できるだけ早くこの問題を解決する方法を教えてください。

ここに画像の説明を入力してください。

答え1

あなたは正しいです。

java -classpath /var/lib/jenkins/bin;/var/lib/Jenkins/CYOV3/lib/* org.testng.TestNG testng.xml
まるでそうしたようにコマンドですが、そうではありません。二つコマンド(区切り;):

  • java -classpath /var/lib/jenkins/binjava不完全なコマンドであるため、長い使用法/エラーメッセージが表示されます。
  • /var/lib/Jenkins/CYOV3/lib/* org.testng.TestNG testng.xml、最初の単語(含まれているため)をワイルドカード(パス名拡張を実行)し、*次のように拡張します。
    /var/lib/jenkins/CYOV3/lib/bsh-2.0b4.jar /var/lib/Jenkins/CYOV3/lib/foo /var/lib/Jenkins/CYOV3/lib/quux org.testng.TestNG testng.xml
    失敗は、/var/lib/jenkins/CYOV3/lib/bsh-2.0b4.jarJARファイル(スクリプトまたはバイナリ実行ファイルではない)に実行権限がないためです。

自分がやりたいことが何であるかを把握し、正しく実行する必要があります。引用符なしでエスケープされていないセミコロン(;)はコマンドの一部にすることはできません。そこにスペースが欲しいですか?それともコロン(:)ですか?方法を考えてみてください。

答え2

ついに固定されたものが見つかりました。以下のコマンドを使って jenkins ジョブにシェルコマンドとして追加してビルドしました。今コマンドが実行されています。他のLinux / Unixサーバーとは異なり、権限が制限されているため、Openshift / docker ssh端末で機能しないことがわかりました。コロンを使用してこれら2つのコマンドを区別します。

java -classpath /var/lib/jenkins/bin:/var/lib/Jenkins/CYOV3/lib/* org.testng.TestNG testng.xml

修正と提案を提案してくれたすべての人に感謝します。

関連情報