このビルド中に「コード9009で終了した」とはどういう意味ですか?
-
20-09-2019 - |
質問
このエラーメッセージとはどういう意味ですか?この問題を修正するために私は何ができますか?
AssemblyInfo.csはコード9009で終了しました
この問題は、おそらくVisual Studioの.NETソリューションの建物後のステップの一部として発生しています。
正しい解決策はありません
他のヒント
ビルド前またはビルド後のイベントコマンドで実行されているコマンドの完全なパスを提供しようとしましたか?
Aのために9009エラーが発生していました xcopy
Visual Studio 2008の建物後イベントコマンド。
コマンド
"xcopy.exe /Y C:\projectpath\project.config C:\compilepath\"
コード9009で終了しました。
しかし、私の場合、それも断続的でした。つまり、エラーメッセージは、コンピューターを再起動するまで持続し、コンピューターの再起動後に消えます。私がまだ発見していないいくつかのリモート関連の問題の後に戻ってきました。
ただし、私の場合、コマンドにフルパスを提供することで問題が解決しました。
c:\windows\system32\xcopy.exe /Y C:\projectpath\project.config C:\compilepath\
ただの代わりに:
xcopy.exe /Y C:\projectpath\project.config C:\compilepath\
フルパスがない場合、再起動後しばらく実行してから停止します。
また、この投稿へのコメントで述べたように、 スペースがある場合 フルパスでは、必要です コマンドの周りの引用符. 。例えば
"C:\The folder with spaces\ABCDEF\xcopy.exe" /Y C:\projectpath\project.config C:\compilepath\
スペースに関するこの例はテストされていないことに注意してください。
エラーコード9009は、エラーファイルが見つからないことを意味します。ここの回答に投稿された根本的な理由はすべて、理由を理解するための良いインスピレーションですが、エラー自体は単に悪い道を意味します。
Microsoft Visual Studio X86ツールを使用するための環境設定が欠けている場合に発生します。
したがって、ビルド後の手順で最初のコマンドとして追加してみてください。
Visual Studio 2010の使用:使用:
call "$(DevEnvDir)..\Tools\vsvars32.bat"
@floriankochがコメントで述べたように、2017年の使用のために:
call "$(DevEnvDir)..\Tools\VsDevCmd.bat"
他のコマンドの前に配置する必要があります。
Microsoft Visual Studio X86ツールを使用するための環境を設定します。
おそらく、結果のパスにスペースがあります。
パスを引用することでこれを回避することができ、スペースを許可します。例えば:
xcopy "$(SolutionDir)\Folder Name\File To Copy.ext" "$(TargetDir)" /R /Y /I
WIN 7の環境変数からパス変数を変更した後、同じ変数を持っていました。
ポストビルドイベントスクリプトが指定されたパスに存在しないバッチファイルを実行しようとしていたときに、エラー9009がありました。
パス環境変数を編集したときにこのエラーが発生しました。編集後、誤って追加しました Path=
パス文字列の先頭に。このような不正なパス変数を使用して、コマンドラインでXcopyを実行することができませんでした(コマンドやファイルは見つかりません)。ビジュアルスタジオは、コード9009のエラーを引用して、ビルド後のステップの実行を拒否しました。
Xcopyは通常、C: Windows System32に存在します。 Path環境変数がXCopyがDOSプロンプトで解決できるようになったら、Visual Studioは私のソリューションをうまく構築しました。
スクリプトが実際に行う必要があることを実際に実行し、それが単に追加できるエラーについて視覚的なスタジオである場合:
exit 0
スクリプトの終わりまで。
スペルを確認してください。私は実行可能ファイルに電話しようとしていましたが、名前が間違っていて、それは私に与えてくれました exited with code 9009
メッセージ。
私の場合、コマンドを呼び出す前に、最初に適切なディレクトリに「CD」(ディレクトリを変更)しなければなりませんでした。
例:
cd "$(SolutionDir)"
call "$(SolutionDir)build.bat"
私の正確なエラーはでした
The command "iscc /DConfigurationName=Debug "C:\Projects\Blahblahblah\setup.iss"" exited with code 9009.
9009はファイルが見つからないことを意味しますが、実際にはコマンドの「ISCC」部分を見つけることができませんでした。
追加して修正しました ";C:\Program Files\Inno Setup 5 (x86)\"
システム環境変数へ "path"
別のバリアント:
今日は、win32のcronのpythonインタープリターを呼び出して、exitcode(%errorlevel%)9009を取ります。
私の場合の問題は、テストクラスライブラリの建物後イベントのコマンドラインでコマンドを使用しようとしたときに発生しました。あなたがそのような引用符を使用するとき:
"$(SolutionDir)\packages\NUnit.Runners.2.6.2\tools\nunit" "$(TargetPath)"
またはコンソールを使用している場合:
"$(SolutionDir)\packages\NUnit.Runners.2.6.2\tools\nunit-console" "$(TargetPath)"
これは私にとって問題を修正しました。
また、プロジェクトのポストビルドイベント編集ウィンドウにラインブレークがないことを確認してください。 XcopyコマンドがマルチラインであるときにXcopyコマンドをコピーしてVSに貼り付けると問題が発生します。
ビルド前のステップで行の最後に「> myfile.txt」を追加し、実際のエラーがファイルを検査しました。
TFAの回答はダウン投票されましたが、実際にはこの問題を引き起こす可能性があります。ハンゾロのおかげで、私は出力ウィンドウを見て、次のことを見つけました。
3>'gulp' is not recognized as an internal or external command,
3>operable program or batch file.
3>D:\dev\<filepath>\Web.csproj(4,5): error MSB3073: The command "gulp clean" exited with code 9009.
実行後 npm install -g gulp
, 、このエラーの取得を停止しました。 Visual Studioでこのエラーが発生している場合は、出力ウィンドウを確認し、問題が絶え間ない環境変数であるかどうかを確認してください。
私にとって、ディスクスペースは低く、書き込みができなかったファイルは後で存在すると予想されていました。その他の回答は、欠落しているファイル(または名前ごとに名前が付けられていないファイル)に言及しましたが、根本的な原因はディスクスペースの不足でした。
パスのスペースのために、ファイルの別のバリアントが見つかりません。私の場合、MSBUILDスクリプト。 HTMLスタイルを使用する必要がありました 「 execコマンド内の文字列。
<!-- Needs quotes example with my Buildscript.msbuild file -->
<Exec Command=""$(MSBuildThisFileDirectory)\wix\wixscript.bat" $(VersionNumber) $(VersionNumberShort)"
ContinueOnError="false"
IgnoreExitCode="false"
WorkingDirectory="$(MSBuildProjectDirectory)\wix" />
Visual Studioを再起動するだけでこれを修正しました - 走ったばかりでした dotnet tool install xxx
コンソールウィンドウとVSは、変更された新しい環境変数および/またはパス設定をまだ取得していなかったため、迅速な再起動が問題を修正しました。
これはかなり基本的なものであり、私はこの問題を抱えていて、恥ずかしい単純な失敗を抱えています。
アプリケーションはコマンドライン引数を使用し、それらを削除してから追加しました。突然、プロジェクトの構築に失敗しました。
ビジュアルスタジオ - >プロジェクトプロパティ - >「デバッグ」タブ(「ビルドイベント」タブではない)を使用することを確認します - >コマンドライン引数
私はこのケースが間違っていたものを使用しました。
私にとっては、1つのポストシャープバージョンから大きなソリューション(〜80プロジェクト)の次のバージョンにアップグレードした後に起こりました。プレビルドイベントにコマンドがあるプロジェクトのコンパイラエラーがあります。
「CMD」は、内部または外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていません。 c:プログラムファイル(x86) msbuild 14.0 bin microsoft.common.currentversion.targets(1249,5):エラーMSB3073:コマンド "cmd /c c: gitrepos main serviceinterfaces dev.config dev.config prebuild.cmd serviceinterfaces "コード9009で終了しました。
Pathsharp.patterns.diagnosticsに関連する複数の繰り返しパスで、パス変数が長すぎて破損していました。 Visual Studioを閉じて再び開いたとき、問題は修正されました。
私の解決策は単純でした。それで、私はコンピューターを再起動し、問題はなくなりました。
私もこれに出くわしました 9009
上書きの状況に直面している場合の問題。
基本的に、ファイルが既に存在し、あなたが指定していない場合 /y
Switch(自動的に上書き)このエラーは、ビルドから実行すると発生する可能性があります。
実際、何らかの理由で%windir%環境変数が時々消去されることに気付きました。私のために働いたのは、Windir Environment変数をC: Windows、再起動と再起動に再設定することでした。そうすれば、ソリューションファイルの変更を防ぐことができません。
少なくともVisual Studio Ultimate 2013、バージョン12.0.30723.00アップデート3では、IF/ELSEステートメントをラインブレークで分離することはできません。
作品:
if '$(BuildingInsideVisualStudio)' == 'true' (echo local) else (echo server)
うまくいかない:
if '$(BuildingInsideVisualStudio)' == 'true' (echo local)
else (echo server)
さらに別の理由:ビルド前のイベントが別のプロジェクトBIN PATHを参照し、MSBUILDを実行するときにこのエラーが表示されますが、Visual Studioではなくこのエラーが表示される場合、 *.slnファイル(テキストエディター付き)でプロジェクトを手動でアレンジする必要があります。イベントでターゲットにしているプロジェクトは、イベントのプロジェクトの前に構築されていること。言い換えれば、MSBuildはプロジェクトが *.slnファイルにリストされている順序を使用しますが、VSはプロジェクト依存関係の知識を使用します。 WixProjの後にWIXPROJに含まれるデータベースを作成するツールがリストされたときに、これが起こりました。
私の場合、パスにはロシアのシンボルがあったと思います(すべてのプロジェクトはユーザーフォルダーにありました)。解決策を別のフォルダー(ディスク上に直接)に入れたとき、すべてが問題になりました。
私の解決策は、ファイルのコピーを作成し、ビルドタスクにステップを追加して、元のファイルにファイルをコピーすることでした。
グローバルにグラントをインストールしていることを確認する必要があります