Bagaimana cara mengatur skrip MSBuild untuk menggunakan kumpulan direktori luar di file csproj sambil membangun seluruh solusi?

Saya tidak yakin bagaimana saya bisa membuat skrip MSBuild menggunakan jalur keluaran, nilai direktori keluaran dari file CSproj. Saya telah melihat contoh di mana saya mengatur jalur keluaran di MSscript tetapi itu membuang semua keluaran dalam satu folder besar. Saya ingin masing-masing proyek memiliki jalur keluarannya sendiri dan MSbuild membangun solusi sedemikian rupa sehingga keluaran untuk proyek tersebut dan dibuat di direktori keluaran yang sesuai. Terima kasih.


person Bladerunner    schedule 08.05.2015    source sumber
comment
Jangan atur OutputPath saat memanggil msbuild.exe, maka nilai dari proyek harus digunakan.   -  person Sayed Ibrahim Hashimi    schedule 09.05.2015


Jawaban (2)


Tidak ada cara yang mudah. Salah satu pilihannya adalah memperluas MSBuild dan menyalin output dari setiap proyek ke folder umum.

Jika Anda melihat file Microsoft.Common.Targets di c:\Windows\Microsoft.Net\Framework\v4.*\ Anda dapat melihat cara file tersebut memuat file target khusus di awal dan akhir folder itu. Jika Anda menambahkan Custom.After.Microsoft.Common.Targets ke folder C:\Program Files (x86)\MSBuild\v4\ Anda dapat memuatnya file katakanlah $(SolutionDir)\Solution.targets. Ini akan memungkinkan Anda memperluas setiap solusi secara berbeda dan Anda dapat menambahkan tindakan khusus apa pun yang Anda inginkan di dalam setiap solusi yang berlaku untuk setiap proyek. Saya menggunakan ini dan itu berfungsi dengan baik.

person mageos    schedule 09.05.2015

Terima kasih atas jawaban Anda kawan. Saya menemukan cara untuk menjalankan solusi tanpa memberikan folder keluaran tertentu. Saya harus memperbaiki jalur folder keluaran ke /bin di csprojs dan kemudian menjalankan MSbuild dengan solusinya dapat mengambil jalur tersebut dari csprojs dan membangun keluaran ke dalam folder tersebut.

person Bladerunner    schedule 22.05.2015