18

MSbuildの後にジェンキンスでこのコマンドを実行しようとしています

xcopy "C:\Program Files (x86)\Jenkins\workspace\trunk\Projects\results\results\obj\Debug\Package\PackageTmp" "Y:\Extraction_Zone\Jenkins\" /E 

Y: マップされたネットワーク ドライブです。これは cmd.exe では正常に実行されますが、Jenkins で実行しようとするとエラーが発生しますInvalid drive specification

ジェンキンスからの出力は次のとおりです。

Time Elapsed 00:00:04.03
[trunk] $ cmd /c call C:\Windows\TEMP\hudson3389873107474371072.bat

C:\Program Files (x86)\Jenkins\workspace\trunk>xcopy "C:\Program Files (x86)\Jenkins\workspace\trunk\Projects\results\results\obj\Debug\Package\PackageTmp" "Y:\Extraction_Zone\Jenkins\" /E 
Invalid drive specification
0 File(s) copied

C:\Program Files (x86)\Jenkins\workspace\trunk>exit 4 
Build step 'Execute Windows batch command' marked build as failure
Finished: FAILURE

どんな助けでも大歓迎です。

4

7 に答える 7

17

私もかつて同様の問題を抱えていました。Jenkins サービスの「Logon as This account」をすぐ下services.mscに付与してみて、そこに入力するアカウントが実行に使用するアカウントと同じであることを確認してくださいcmd.exe

ここに画像の説明を入力

于 2012-06-08T16:05:15.680 に答える
4

Java JAR ファイルに基づくこれらのコマンドは、私にとってはうまくいきました:
cmd
net use x: \\
xcopy "dist\" x:\ /Y

それだけです! 私はこの問題を理解するのに多くの時間を費やしましたが、CMD と NET USE を作成するまで何も機能しませんでした!
jenkins サービスの権限を変更する必要も、runas コマンドを使用する必要もありませんでした。

ただし、誰もがネットワーク ドライブへの読み取りおよび書き込みアクセス権を持っていたことに言及しなければなりません。

于 2014-04-06T16:36:43.107 に答える
1

ほとんどのものを簡単に修正できます。

  1. 実行しようとしているものでバッチコマンドを作成し、コマンドプロンプトテキストを内部に含む filename.bat を作成します。
  2. バッチ コマンドの通常の Windows ショートカットを作成し、ショートカットの詳細プロパティを編集して、[管理者として実行] をオンにします (トリッキーなトリッキー)。
  3. ここで、jenkins コマンド ライン呼び出しから filename.lnk ショートカットを実行します。これにより、すべてのジャズを回避できます。

:)

于 2017-07-27T20:47:36.753 に答える
0

adarshr の解決策 (つまり、サービスのログオン資格情報の変更) は、問題の一部を解決してくれました: 私の場合、これにより、(ssh プロトコルを使用して) Mercurial リポジトリを正常にチェックアウトすることができました。 「ローカル システム アカウント」を使用する場合は行わないでください。

ただし、コマンドライン スクリプトを実行する場合と、ビルド セクションで jenkins の「シェルを実行する」スクリプトから同じスクリプトを実行する場合では、動作が異なります。私の場合、Python 拡張機能をコンパイルします。Jenkins では、拡張機能をインポートできません (エラーは表示されませんが、実行が停止するだけなので、クラッシュすると思われます)。

サービスをアンインストールし、スレーブ エージェントを Java Web Start として実行すると、同じ動作になります。これは一時的な修正ですが、Windows ビルド マシンを再起動するときに、Java Web Start アプリケーションを手動で再起動する必要があります。

したがって、少なくとも私の場合は、これが資格情報の問題であることは明らかです。

資格情報の使用に関するドキュメント: https://wiki.jenkins-ci.org/display/JENKINS/Jenkins+CLI

于 2013-05-14T09:51:00.433 に答える
0

CIFS プラグインで問題を解決しました。

于 2015-03-19T11:59:39.030 に答える