apa maksud pesan error ini? Apa yang bisa saya lakukan untuk memperbaiki masalah ini?
AssemblyInfo.cs keluar dengan kode 9009
Masalahnya mungkin terjadi sebagai bagian dari langkah post-build dalam solusi .NET di Visual Studio.
.net
visual-studio
Anthony Mastrean
sumber
sumber
Jawaban:
Apakah Anda mencoba memberikan path lengkap dari perintah yang berjalan di perintah event pre atau post-build?
Saya mendapatkan kesalahan 9009 karena
xcopy
perintah event post-build di Visual Studio 2008.Tetapi dalam kasus saya itu juga intermiten. Yaitu, pesan kesalahan tetap sampai restart komputer, dan menghilang setelah restart komputer. Itu kembali setelah beberapa masalah terkait jarak jauh yang belum saya temukan.
Namun, dalam kasus saya, memberikan perintah dengan path lengkap menyelesaikan masalah:
Alih-alih hanya:
Jika saya tidak memiliki path lengkap, itu akan berjalan beberapa saat setelah restart, dan kemudian berhenti.
Juga seperti yang disebutkan pada komentar untuk posting ini, jika ada spasi di jalur penuh, maka orang perlu tanda kutip di sekitar perintah . Misalnya
Perhatikan bahwa contoh ini berkaitan dengan spasi tidak diuji.
sumber
"$(SolutionDir)packages\NUnit.2.5.10.11092\tools\"nunit-console "$(TargetPath)"
) menyelesaikannya.PATH
variabel lingkungan hilang entah bagaimana? Saya mendapatkan kesalahan ini setiap sekarang dan kemudian. Saya memilikinpm install
pengaturan sebagai acara pra-bangun, dan awalnya bekerja (jadi saya menganggap semuanya sudah diatur), tetapi kemudian secara acak itu akan berhenti bekerja pada siang hari (umumnya ketika beralih di antara solusi / cabang saya percaya), dan itu tidak akan lagi tahu tentangnpm
. Restart VS 'fix' it ... artinyaPATH
setup saya benar, tetapi sepertinya bangun oleh VS. Jika ada cara untuk melihat variabel env dari dalam VS saya bisa mengkonfirmasi ini.%systemroot%\System32\xcopy ...
Kode Kesalahan 9009 berarti file kesalahan tidak ditemukan. Semua alasan mendasar yang diposting dalam jawaban di sini adalah inspirasi yang baik untuk mencari tahu mengapa, tetapi kesalahan itu sendiri berarti jalan yang buruk.
sumber
Ini terjadi ketika Anda kehilangan beberapa pengaturan lingkungan untuk menggunakan alat Microsoft Visual Studio x86.
Karenanya, coba tambahkan sebagai perintah pertama dalam langkah-langkah post-build Anda:
Untuk Visual Studio 2010 gunakan:
Seperti @FlorianKoch disebutkan dalam komentar, untuk penggunaan VS 2017:
Itu harus ditempatkan sebelum perintah lain.
Ini akan mengatur lingkungan untuk menggunakan alat Microsoft Visual Studio x86.
sumber
call "$(DevEnvDir)..\Tools\vsvars32.bat"
? Terima kasihPath
variabel lingkungan saya . Periksa jendela Output untuk informasi lebih lanjut."$(DevEnvDir)..\Tools\VsDevCmd.bat"
Kemungkinan besar Anda memiliki ruang di jalur yang dihasilkan.
Anda dapat mengatasi ini dengan mengutip jalur, sehingga memungkinkan spasi. Sebagai contoh:
sumber
Punya variabel yang sama setelah mengubah variabel PATH dari Variabel Lingkungan di Win 7. Mengubah kembali ke default membantu.
sumber
Saya memiliki kesalahan 9009 ketika skrip peristiwa pembuatan pos saya mencoba menjalankan file batch yang tidak ada di jalur yang ditentukan.
sumber
Saya menyebabkan kesalahan ini terjadi ketika saya redacted variabel lingkungan Path saya. Setelah mengedit, saya tidak sengaja menambahkan
Path=
ke awal string path. Dengan variabel path yang salah bentuk, saya tidak dapat menjalankan XCopy pada baris perintah (tidak ada perintah atau file tidak ditemukan), dan Visual Studio menolak untuk menjalankan langkah post-build, mengutip kesalahan dengan kode 9009.XCopy umumnya berada di C: \ Windows \ System32. Setelah variabel lingkungan Path memungkinkan XCopy untuk diselesaikan pada DOS prompt, Visual Studio membangun solusi saya dengan baik.
sumber
Kesalahan saya sebenarnya adalah
The command "iscc /DConfigurationName=Debug "C:\Projects\Blahblahblah\setup.iss"" exited with code 9009.
9009 berarti file tidak ditemukan, tetapi sebenarnya tidak dapat menemukan bagian "iscc" dari perintah.
Saya memperbaikinya dengan menambahkan
";C:\Program Files\Inno Setup 5 (x86)\"
ke variabel lingkungan sistem"path"
sumber
Jika skrip benar-benar melakukan apa yang perlu dilakukan dan itu hanya Visual Studio yang mengganggu Anda tentang kesalahan yang bisa Anda tambahkan:
sampai akhir skrip Anda.
sumber
Periksa ejaannya. Saya mencoba untuk memanggil executable tetapi namanya salah eja dan itu memberi saya
exited with code 9009
pesan.sumber
Dalam kasus saya, saya harus "CD" (Change Directory) ke direktori yang tepat terlebih dahulu, sebelum memanggil perintah, karena executable yang saya panggil ada di direktori proyek saya.
Contoh:
sumber
Varian lain:
hari ini saya memanggil juru bahasa python dari cron di win32 dan mengambil ExitCode (% ERRORLEVEL%) 9009, karena akun sistem yang digunakan oleh cron tidak memiliki jalur ke direktori Python.
sumber
Masalah dalam kasus saya terjadi ketika saya mencoba menggunakan perintah pada baris perintah untuk acara Post-build di Perpustakaan Kelas Tes saya. Ketika Anda menggunakan tanda kutip seperti itu:
atau jika Anda menggunakan konsol:
Ini memperbaiki masalah bagi saya.
sumber
Jawaban tfa telah diturunkan, tetapi sebenarnya dapat menyebabkan masalah ini. Berkat hanzolo, saya melihat ke jendela output dan menemukan yang berikut:
Setelah berjalan
npm install -g gulp
, saya berhenti mendapatkan kesalahan ini. Jika Anda mendapatkan kesalahan ini di Visual Studio, periksa jendela output dan lihat apakah masalahnya adalah variabel lingkungan yang tidak disetel.sumber
Juga, pastikan tidak ada jeda baris di jendela pengeditan acara pembuatan pos di proyek Anda. Terkadang menyalin perintah xcopy dari web ketika multi-line dan menempelkannya ke VS akan menyebabkan masalah.
sumber
Saya menambahkan "> myFile.txt" ke akhir baris pada langkah pra-membangun dan kemudian memeriksa file untuk kesalahan yang sebenarnya.
sumber
Bagi saya, ruang disk rendah, dan file yang tidak dapat ditulis diharapkan akan hadir nanti. Jawaban lain menyebutkan file yang hilang (atau file dengan nama yang dirujuk salah / dirujuk dengan nama) - tetapi penyebab utama adalah kurangnya ruang disk.
sumber
Bagi saya itu terjadi setelah memutakhirkan paket nuget dari satu versi PostSharp ke yang berikutnya dalam solusi besar (~ 80 proyek). Saya punya kesalahan kompilator untuk proyek yang memiliki perintah di acara PreBuild.
'cmd' tidak dikenali sebagai perintah internal atau eksternal, program yang dapat dijalankan, atau file batch. C: \ Program Files (x86) \ MSBuild \ 14.0 \ bin \ Microsoft.Common.CurrentVersion.targets (1249,5): error MSB3073: Perintah "cmd / c C: \ GitRepos \ main \ ServiceInterfaces \ DEV.Config \ PreBuild.cmd ServiceInterfaces "keluar dengan kode 9009.
Variabel PATH rusak menjadi terlalu panjang dengan beberapa jalur berulang yang terkait dengan PostSharp.Patterns.Diagnostics. Ketika saya menutup Visual Studio dan membukanya lagi, masalahnya diperbaiki.
sumber
Namun varian file lain tidak ditemukan, karena spasi di jalan. Dalam kasus saya dalam skrip msbuild. Saya perlu menggunakan gaya HTML & quot; string dalam perintah exec.
sumber
Sama seperti jawaban lainnya, dalam kasus saya itu karena file yang hilang. Untuk mengetahui apa file yang hilang, Anda dapat pergi ke jendela output dan itu akan menunjukkan kepada Anda langsung apa yang hilang.
Untuk membuka jendela output di Visual Studio:
sumber
Saya memperbaikinya dengan hanya me-restart Visual Studio - Saya baru saja menjalankan
dotnet tool install xxx
di jendela konsol dan VS belum mengambil variabel lingkungan baru dan / atau pengaturan jalur yang diubah, jadi restart cepat memperbaiki masalah ini.sumber
Ini cukup mendasar, saya punya masalah ini, dan gagal sederhana memalukan.
Aplikasi menggunakan argumen baris perintah, saya menghapusnya dan kemudian menambahkannya kembali. Tiba-tiba proyek gagal dibangun.
Visual Studio -> Properti Proyek -> verifikasi bahwa Anda menggunakan tab 'Debug' (bukan tab 'Bangun Acara') -> Argumen Baris Perintah
Saya menggunakan area teks Post dan Pre-build, yang salah dalam kasus ini.
sumber
Solusi saya sangat sederhana: apakah Anda sudah mencoba mematikannya lagi? Jadi saya me-restart komputer dan masalah itu hilang.
sumber
Saya juga mengalami ini
9009
masalah ketika menghadapi situasi menimpa.Pada dasarnya, jika file sudah ada dan Anda belum menentukan
/y
sakelar (yang secara otomatis menimpa) kesalahan ini dapat terjadi ketika dijalankan dari build.sumber
Sebenarnya saya perhatikan bahwa karena alasan tertentu variabel% windir% terkadang terhapus. Apa yang berhasil untuk saya adalah mengatur ulang variabel lingkungan windir ke c: \ windows, restart VS, dan hanya itu. Dengan begitu Anda mencegah harus memodifikasi file solusi.
sumber
Setidaknya dalam Visual Studio Ultimate 2013, Versi 12.0.30723.00 Pembaruan 3, tidak mungkin untuk memisahkan pernyataan if / else dengan jeda baris:
bekerja:
tidak bekerja:
sumber
Namun alasan lain: Jika acara pra-bangun Anda merujuk path bin proyek lain dan Anda melihat kesalahan ini ketika menjalankan msbuild, tetapi bukan Visual Studio, maka Anda harus mengatur proyek secara manual dalam file * .sln (dengan editor teks) jadi bahwa proyek yang Anda targetkan dalam acara tersebut dibangun sebelum proyek acara. Dengan kata lain, msbuild menggunakan urutan proyek terdaftar dalam file * .sln sedangkan VS menggunakan pengetahuan tentang dependensi proyek. Saya memiliki ini terjadi ketika alat yang membuat database untuk dimasukkan dalam wixproj terdaftar setelah wixproj.
sumber
Saya pikir dalam kasus saya ada simbol Rusia di jalur (semua proyek berada di folder pengguna). Ketika saya meletakkan solusi di folder lain (langsung pada disk), semuanya menjadi ok.
sumber
Solusi saya adalah membuat salinan file dan menambahkan langkah ke tugas build untuk menyalin file saya di atas yang asli.
sumber
Anda harus memastikan bahwa Anda telah menginstal grunt secara global
sumber