2009-09-14 19 views
6

MSDN:Błąd BaseOutputPath w Visual Studio 2008?

BaseOutputPath Określa ścieżkę bazową dla pliku wyjściowego. Jeśli jest zestaw, MSBuild użyje OutputPath = $ (BaseOutputPath) \ $ (Configuration) \

Próbowałem używać MSBuild Projekt Własności BaseOutputPath zamiast określania OutputPath dla każdej konfiguracji & platformie ale Visual Studio narzeka, gdy kompiluję:

Właściwość OutputPath nie jest ustawiona na tego projektu. Sprawdź, czy określono prawidłową konfigurację/platformę .

Umieszczam <BaseOutputPath>..\Binaries</BaseOutputPath> w pierwszym bezwarunkowym <ProjectProperty>.

Czy używam go niepoprawnie, czy jest to znany błąd w Visual Studio?

Odpowiedz

7

Jest to bardziej prawdopodobny błąd w dokumentacji niż w VS2008/MSBuild.

Zawsze można uzasadnić, co chcesz zrobić z (wyłudzeniem) kontroli np. plik projektu i importowany plik Microsoft.Common.Targets (zazwyczaj za pośrednictwem np. Microsoft.CSharp.targets, pliki te są dostępne pod adresem:

c: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ Microsoft.Common .targets

) i znaleźć całą logikę MSBuild, która ostatecznie zapełni OutputPath.

W tym przypadku, myślę, że dokumenty leżą wprost, a powinieneś np. jawnie powiedzmy:

<OutputPath>$(BaseOutputPath)\$(Configuration)</OutputPath> 

w bezwarunkowych właściwościach pliku projektu (i usuń OutputPath z właściwości warunkowych), aby to działało.

+0

Rozumiem, ale to naprawdę neguje korzyści z używania BaseOutputPath w pierwszej kolejności. Mogę po prostu użyć .. \ Binaries \ $ (Konfiguracja). Dziękuję za wyjaśnienie! –

Powiązane problemy