2013-10-22 12 views
14

ho un accumulo nel nostro server di Team Foundation, che dà questa guerra:La proprietà OutputPath non è impostato per il progetto TFS2012

C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Microsoft.Common .targets (610): la proprietà OutputPath non è impostata per il progetto 'Plugin.DeploymentTool.csproj'. Si prega di verificare che tu abbia specificato una combinazione valida di configurazione e piattaforma per questo progetto. Configuration = 'Release' Platform = 'x86'. Potresti essere vedere questo messaggio perché stai provando a creare un progetto senza un file di soluzione e hai specificato una configurazione non predefinita o una piattaforma che non esiste per questo progetto.

Non riesco a trovare alcuna soluzione o perché ottengo questo errore. Ma poi guardo il file zip generato, la cartella Binaria è vuota. Ho provato a usare x86, x64 e Any CPU, per vedere se ci sono delle differenze, che non ci sono.

Se guardo il file di progetto, sembra a posto.

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> 
    <DebugSymbols>true</DebugSymbols> 
    <DebugType>full</DebugType> 
    <Optimize>false</Optimize> 
    <OutputPath>bin\Debug\</OutputPath> 
    <DefineConstants>DEBUG;TRACE</DefineConstants> 
    <ErrorReport>prompt</ErrorReport> 
    <WarningLevel>4</WarningLevel> 
    </PropertyGroup> 
    <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> 
    <DebugType>pdbonly</DebugType> 
    <Optimize>true</Optimize> 
    <OutputPath>bin\Release\</OutputPath> 
    <DefineConstants>TRACE</DefineConstants> 
    <ErrorReport>prompt</ErrorReport> 
    <WarningLevel>4</WarningLevel> 
    </PropertyGroup> 
+0

Quale configurazione è stata configurata per utilizzare la definizione di build? Guardando il messaggio, Build sta cercando di usare x86 e hai solo PropertyGroups per AnyCPU. – DaveShaw

+0

@DaveShaw. Poi guardo il sommario della build senza la configurazione, sta usando Debug | AnyCPU. ma se configuro la configurazione se dà. me l'errore. Il progetto è dichiarato che usa il debug | Qualsiasi CPU – mortenstarck

risposta

42

Ho trovato una soluzione al problema, che risulta essere piuttosto semplice. la configurazione predefinita in TFS Costruire simile a questa: Configurazione: uscita, Piattaforma: Qualsiasi CPU

Ma in Visual Studio 2012, che appare così: Configurazione: uscita, Piattaforma: AnyCPU

La soluzione è rimuovere lo spazio tra Any e CPU nella TFS Build Platform. Ora funziona perfettamente.

UPDATE

Il problema è stato corretto in VS2013.

+0

L'ho fatto io stesso su build da riga di comando, non riesco mai a ricordare se è con o senza spazi :). Sono contento che tu l'abbia trovato. – DaveShaw

+0

Puoi mostrare come appare in linea di comando? – ganders

+1

Buon occhio, grazie mille per la condivisione. – Justin

10

Per i build integrati di Visual Studio Team Services (era Visual Studio Online), anche la risposta di @ mortenstarck fa il trucco. Nelle variabili della build, specificare anycpu per BuildPlatform.


build variables


La variabile viene fatto riferimento nel passaggio di generazione:

build step

+0

Può confermare questo risolve il problema in VSTS. Grazie. – Barrie

+1

Mio Dio, questo semplice, Microsoft, per favore aggiusta questo ... – CularBytes

7

In aggiunta alle altre risposte, ho notato questo:

  1. Per la costruzione di un .sln (soluzione), è necessario lo spazio in modo che sia any cpu (notare lo spazio).

  2. Per la costruzione di .csproj, NON è necessario lo spazio quindi deve essere anycpu.

Problemi correlati