Visual Studio 2010 tidak membangun sebelum dijalankan ketika ada perubahan kode

126

Saya telah menggunakan F5 (Start Debugging) selama bertahun-tahun untuk membuat kode (jika kedaluwarsa), lalu debug. Ini bekerja pada VS 2010 juga, namun hari ini baru mulai debugging tanpa membangun. Katakanlah saya melakukan clean pada proyek, dan kemudian tekan F5 alih-alih membangunnya sehingga dapat menjalankannya melempar pesan kesalahan yang mengatakan bahwa exe tidak ada untuk dijalankan. Bagaimana saya membuatnya terlebih dahulu? Apa yang bisa berubah?

jamone
sumber
1
Saya memiliki masalah yang sama. Terjadi dari satu ke hari berikutnya dan saya belum mengubah apa pun di dialog Opsi. Jawaban Hans memecahkan masalah saya.
jbe
Saya baru saja menemukan ini baru-baru ini, memposting laporan bug ke msft connect, menyuarakan pilihan Anda untuk membuat mereka memperbaikinya connect.microsoft.com/VisualStudio/feedback/details/626414/...
Jason

Jawaban:

164

Alat + Opsi, Proyek dan Solusi, Bangun dan Jalankan. "Sedang Dijalankan, ketika proyek sudah ketinggalan zaman" = Selalu bangun. Yang di bawah itu = Jangan diluncurkan.

Hans Passant
sumber
7
Baru diperiksa dan diatur ke Selalu Bangun ... Jadi seharusnya tidak melakukan ini.
jamone
5
Bekerja pada mesin saya. Dulu bekerja pada Anda. Reboot berikutnya.
Hans Passant
3
Reboot tidak memperbaikinya tetapi mengubah "Saat Berjalan, ketika proyek sudah ketinggalan zaman" = Selalu bangun untuk Jangan memulai menabung / berhenti VS lalu mengubahnya kembali perbaiki.
jamone
3
Itu bug. Ingin mengirimkannya ke connect.microsoft.com?
Hans Passant
1
@Hans: tentu saja, bagaimana Anda mereproduksi ini? Meyakinkan orang-orang di microsoft connect bahwa itu benar-benar masalah hampir tidak mungkin kecuali itu dapat direproduksi. Yang hanya masuk akal, seolah-olah Anda tidak bisa maka kemungkinan adalah salah satu dari dev tidak bisa
NotMe
119

Saya punya masalah ini dan ternyata menjadi Manajer Konfigurasi. Saya baru saja berubah dari Debug | Mixed CPU ke Debug | Any CPU dan proyek tidak diatur untuk membangun di bawah konfigurasi ini

Tim
sumber
Ini juga menyelesaikannya untuk saya - sepertinya menjadi penyebab masalah itu.
gstercken
3
Tip yang bagus! Bukan sesuatu yang akan Anda pikirkan. Terima kasih
Almund
1
Ya ini memperbaikinya untuk saya! Cukup klik semua kotak centang di sebelah untuk membangun di manajer konfigurasi. Terima kasih Tim!
chaz
Memperbaiki masalah serupa untuk saya juga. Terima kasih!
Austin Thompson
1
Masalah saya adalah konfigurasi yang salah dipilih! Saya punya proyek terpisah di mana setiap konfigurasi adalah bahasa yang berbeda, dan kombo diatur ke salah satu konfigurasi ini. Baru saja mengubahnya menjadi Debug_Unicode dan sekarang sedang dibangun!
sergiol
22

buka manajer konfigurasi Anda dan periksa apakah kotak centang di kolom build untuk proyek startup Anda dicentang. Saya memiliki masalah yang sama, tetapi kotak centangnya tidak aktif, jadi saya memeriksanya dan sekarang berfungsi!

Michael Scherf
sumber
Terima kasih telah membantu saya. Saya telah mengabaikan opsi. ;)
Skalli
17

Terlepas dari hal di atas juga pastikan bahwa 'Hanya membangun proyek startup dan dependensi saat dijalankan' tidak dicentang (di Alat -> Opsi -> Proyek dan Solusi -> Bangun dan Jalankan)

Alo
sumber
1
Saya punya masalah itu, dan ini adalah solusi. Terima kasih.
Roberto Luis Bisbé
1
Ini memperbaikinya bagi saya tetapi tampaknya seperti bug. Proyek yang dimaksud adalah ketergantungan dan harus dibangun.
KingOfHypocrites
Ini adalah pengaturan yang mengerikan untuk tidak dicentang jika Anda memiliki lebih dari satu proyek startup atau proyek pengujian apa pun.
cbp
Terima kasih!! Microsoft harus mengatakan ulang dan mengubah ini sehingga sangat berarti. Tidak jelas bagi saya apa artinya melakukan ketika diperiksa.
Cameron
10

Saya punya masalah ini juga. Saya memeriksa semua yang disarankan tidak berhasil. Ternyata jam saya di pc saya sudah diatur sekitar 12 jam, dan saya menabung ke drive jaringan. Stempel waktu dari file-file itu sudah usang, dan VS tidak berpikir itu perlu untuk membangun proyek saya karena file-file itu super terbaru.

Vinnie
sumber
3

Untuk sementara sekarang saya selalu bingung mengapa laptop saya (dual core 2ghz, 2Gb ram) mengkompilasi situs web saya lebih cepat dari desktop saya (quad core 3ghz dengan ram 16Gb). Keduanya memiliki disk SSD. Opsi build semuanya diatur dengan benar (sama, core count = parallel builds) namun laptop menjalankan situs dalam beberapa detik dan dekstop menjalankan situs dalam sekitar 30 detik.

Menemukan opsi tambahan di bawah "Halaman properti" dari situs, di bawah pengaturan Build, laptop ditetapkan ke "No Build" dan desktop ditetapkan ke "Build and Run". Hanya menemukannya setelah situs berjalan pada laptop tanpa memeriksa kesalahan kompiler.

Mungkin bisa membantu seseorang di masa depan jadi saya pikir saya akan menambahkannya ke posting ini

Jeggs
sumber
2

Titik lain untuk Memeriksa adalah di bawah solusi Halaman Properti -> Properti Konfigurasi -> konfigurasi: pastikan semua kotak centang di bawah Kolom Bangun adalah memeriksa untuk proyek yang Anda perlu memenuhi kembali.

Daniel Nguyen
sumber
1

Saya mencoba solusi sebelumnya dengan hasil yang beragam. TAPI tampaknya berfungsi untuk saya setiap kali saya pergi ke Build -> Clean Solution

Tapi semakin menjengkelkan karena harus melakukan itu setiap saat.

pengguna2813625
sumber
1

Bagi saya itu terjadi karena membangun pengaturan konfigurasi. Solusi studio visual saya memiliki sejumlah proyek yang merupakan campuran dari proyek C # dan C ++. Sekarang saya menyadari bahwa untuk beberapa alasan aneh, Visual Studio lebih memilih untuk tidak membangun proyek C ++ secara default yang terbukti dengan membangun pengaturan konfigurasi. Saya menyadarinya setelah menambahkan proyek C ++ baru ke dalam solusi . Saya tidak tahu mengapa VS tidak mengikuti pendekatan yang sama sambil menambahkan proyek C # baru ke dalam solusi.

Klik kanan file solusi dalam explorer solusi -> Klik properti di menu konteks -> Pilih node Konfigurasi Properti di panel kiri -> Pilih Konfigurasi node . Ini menunjukkan daftar semua proyek dalam solusi. Proyek pertama LearnDs adalah proyek C ++. Perhatikan kotak centang di kolom bangun di baris pertama. Tidak dicentang. Ini adalah alasan mengapa Visual Studio 2010 tidak membangun proyek C ++ saya (menekan F5) yang berisi beberapa perubahan sejak terakhir dibangun dengan sukses.

masukkan deskripsi gambar di sini

Saat saya memeriksa kotak centang yang sesuai dan menyimpan pengaturan konfigurasi build untuk solusi, itu berhasil. Sekarang saya melihat prompt di bawah ini setiap kali saya menekan F5 karena VS dapat mendeteksi bahwa ada beberapa perubahan baru sejak itu dibangun terakhir. Prompt ini karena pengaturan saya di menu Alat -> Pilihan submenu -> Proyek dan simpul Solusi -> Bangun dan Jalankan Node -> "Saat Dijalankan, saat proyek kedaluwarsa" diatur ke Prompt to build. Jika Anda tidak menyukai prompt ini, maka set ke Always build.

masukkan deskripsi gambar di sini

RBT
sumber
1

Alat -> Opsi -> Proyek dan Solusi.

  1. Tetapkan sebagai Selalu membangun / Prompt untuk Membangun untuk "Saat Berlari, Proyek sudah usang"
  2. Hapus centang pada kotak centang untuk "Hanya membangun proyek startup dan dependensi saat Jalankan"
Poovizhi
sumber