3

PSEXEC で Hudson を初めて使用します。コンピューターで hudson を使用しています。hudson ビルドからリモート コンピューターでバッチ ファイルを実行したいと考えています。PSEXECを使用してリモートコンピューターでバッチファイルを実行しましたが、コマンドプロンプトから実行すると正常に動作しました.しかし、ハドソンビルドから行ったのと同じように、ハングアップしています..何もしていません。これ。

私はこれを迅速に行いたい...緊急 誰の助けも貴重です

前もって感謝します。

4

4 に答える 4

2

psexecユーザーの入力を待っている可能性はありますか? この場合、hudson はハングします。

Hudson はユーザー資格情報で実行されますか? Hudsonが実行している資格情報を使用してコマンドプロンプトを起動しない場合は、 を呼び出すとどうなるかを確認してくださいpsexec。hudson がローカル システム アカウントで実行されている場合、それを使用してコマンド プロンプトを起動することはできません。資格情報を使用して Hudson を実行してみて、何が起こるかを確認してください。

ところで、Hudsons のログ ファイルを確認しましたか (念のため)。

于 2010-03-01T22:12:12.280 に答える
0

手遅れかもしれませんが、同じ問題を抱えている他の人のために投稿しようと思いました。

Psexecは、CIサーバーからの実行に問題があります。どのCIサーバーを使用していても、Hudson、Teamcityなどです。ビルドサーバーから実行すると、Psexecがハングします。すべてのコマンドでハングするわけではありませんが、一部のコマンドでは、psexecがハングします。問題は、psexecがリモート実行コマンドの出力を読み取る方法にあります。究極の解決策は、psexec以外のツールを使用することです。 このソリューションのこのブログを確認できます。しかし、もっと簡単な解決策が必要で、コマンドの出力を気にしないのであれば、psexecの出力を抑制する簡単な解決策を思いつきました。psexecコマンドを実行し、その出力を抑制する小さなc#プログラムを作成できます。

私はここでそれについてブログを書きました

于 2011-11-21T20:48:29.843 に答える
0

PSEXEC が単純にハングするのと同じ問題がありました。

私が見つけた解決策 (AGES をトロールした後) は、呼び出された PSEXEC にパラメーター-accepteula を追加することでした。その後、ハドソンはぶら下がるのをやめました。

とてもイライラします。

于 2010-04-28T10:39:25.577 に答える
0

TeamCity と psExec で同じハングの問題が発生していたので、これに応答すると思いました。実際にはpsexecを実行するJavaの問題だと思うので、ハドソンの場合にも当てはまるはずです。

私は早い段階でaccepteulaの問題に遭遇しましたが、同意する必要があるのは1回だけで、レジストリ設定が設定されます. user327759 が示すように、スクリプトの -accepteula スイッチは、最初から最後まであなたの基礎をカバーします。

これで問題が解決しない場合は、「-i」コマンド スイッチを追加する必要があります。例: psexec -i \ServerName "C:\folder\file.bat"

このソリューションに関するコンテキストについては、私のバックストーリーを含めました。

この PsExec コマンドは、MsBuild タスク、.Net ラッパー、および直接コマンド プロンプトを使用して問題なく実行できましたが、TeamCity は実行中にハングアップするだけでした。Java は、psexec exe を呼び出すときに、標準入力でなんらかの応答を期待しているようです。リモート サーバーでは、psexecsvc プロセスが起動し、サービス コンソールに適切に登録されますが、その後停止します。このような多くの投稿を読み、認めるよりもはるかに長い間苦労した後、TeamCity 以外の他の実行シナリオではこれを必要としないにもかかわらず、最終的に -i オプションを試しました。psexec のドキュメントには、-i が「リモート システム上の指定されたセッションのデスクトップと対話するようにプログラムを実行します。セッションが指定されていない場合、プロセスはコンソール セッションで実行されます」と示されています。

于 2012-03-06T18:41:22.903 に答える