2013-08-01 10 views
24

これはプログラミングエラーよりビルドエラーのほうが多いです。私はビルドで手を汚すような理由が一度もなかったので、このエラーは私を困惑させています。

私は少しの結果でこのエラーをグーグルで試しましたが、応答は存在しないか、理解できないか、または適用できません。

エラーは次のとおりです。

The "exists" function only accepts a scalar value, but its argument 
"$(PackageSourceManifest)" evaluates to "[same path];[same path]" which is not a 
scalar value. C:\Program Files(x86)\MSBuild\Microsoft\VisualStudio\ 
            v10.0\Web\Microsoft.Web.Publishing.targets 

とにかく、私はMicrosoft.Web.Publishing.targetsに掘ったと私はそれが出erroringされている行を見つけました。私は私が私に固執して何かを見つけることができるかどうかを見極めようとしていた場所を冗長に描いています。

何もありません。

私はパッケージのソースマニフェストを変更する方法を探っています。ビルドプロパティを調べましたが、ソースマニフェスト、またはソースマニフェストとは何も何も検索しませんでした。たぶん私はあまりにも難しい見ているか、多分私は何を探すか分からない。

これを修正する方法と原因は何ですか?

+0

'[同じパス]を動作する必要があり、プロジェクトを再構築する;同じ経路]'問題であり、唯一の経路が存在し得ます。 –

+0

'$(PackageSourceManifest)'が解決するものは得られますか? – TheVillageIdiot

+0

最後に、私はちょうど新しいプロジェクトを作成しました。それは今はうまくコンパイルされます。私はVisual Studioのバージョンとフレームワークのバージョン間の変換を想定して、何かが台無しになった。 – Madeline

答えて

28

.csprojファイルを開き、重複するインポートタグを探します。

<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio 
\v10.0\WebApplications\Microsoft.WebApplication.targets" /> 

それらの1つを削除して問題を修正:

は、私の場合.csprojは、このような2行が持っていました。

1

VS2010プロジェクトだったVS2012のプロジェクトをWeb公開しようとしたときに、これが起こったと思います。 VS2012でプロジェクトを再現することは、それを解決する方法です。 @Giacomelliが言及しているように、v10.0ターゲットへの参照を削除しています。何も - 私は、重複輸入を間違って何も見つからなかった= VS2010V10.0v11.0 = VS2012

+0

、または私が行ったように正しいバージョンにパスを更新することができます。 –

-1

が、私はちょうど同じ問題を抱えていたし、私.csprojファイルをチェックすることに注意してください。

30分のつまずきの後、私は.csprojファイルを開いてタグを再配置することで問題を解決しました。

最初にすべてを一番上に移動しましたが、OutputPathが定義されていないというエラーメッセージが表示されました。それらのすべてを除いて:

NuGet.targetsをファイルの最後から移動させるのは、おそらく実際にそれを修正したものでした。私には分かりませんし、もっと時間を無駄にしたくありません。

これは誰かを助けることを望みます。

+1

私にとっては、プロジェクトを閉鎖したり、再オープンしたり、再構築したりするだけでした。 –

8

$ MSBuildExtensionsPath32 $のインポートが不適切なため、同じ問題が発生しました。 v10.0VS2010で、VS2012(v11.0)を使用しているのは明らかです。

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v12.0\WebApplications\Microsoft.WebApplication.targets" /> 

注:あなたがVS2013(v12.0)を持っている場合、あなたはそれを変更することができ、他の場合は

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v11.0\WebApplications\Microsoft.WebApplication.targets" /> 

ためにあなたのインポートを変更した場合@giacomelliのようなこの行を削除すると、カスタムターゲットファイルを定義することができなくなります。 .NET Framework 4で導入MSBuildExtensionsPath32

http://msdn.microsoft.com/en-us/library/ms164309.aspx

:MSDNから

MSBuildExtensionsPathとMSBuildExtensionsPath32の デフォルト値と差がありません。 環境変数MSBUILDLEGACYEXTENSIONSPATHをNULL以外の値の に設定すると、以前のバージョンのデフォルト値 MSBuildExtensionsPathの動作を有効にすることができます。 およびそれ以前のバージョンでは、MSBuildExtensionsPathの既定値は、現在のプロセスのビット数に応じて、\ Program Files \または\ ProgramフォルダのMSBuildサブフォルダの パスを指します( ファイル)。 たとえば、64ビットマシン上の32ビットプロセスの場合、このプロパティー は¥Program Files(x86)フォルダーを指します。 64ビットマシン上の64ビットプロセスの場合、このプロパティは\ Program Filesフォルダを指します。 には、このプロパティの最後のバックスラッシュは含まれません。この場所は、 カスタムターゲットファイルを配置するのに便利な場所です。たとえば、あなたのターゲット ファイルは、\プログラム ファイル\ MSBuildの\ MyFilesフォルダ\ Northwind.targetsと ファイルは、このXMLコードを使用して、プロジェクトにインポートでインストールすることができます

12

は、VS 2012で同じ問題を持っていました -

Error 48 04115: The "exists" function only accepts a scalar value, but its argument "@(_UnmanagedRegistrationCache)" evaluates to "obj\TheQueueData.sqlproj.UnmanagedRegistration.cache;obj\TheQueueData.sqlproj.UnmanagedRegistration.cache" which is not a scalar value. C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets 1091 7 TheQueueData 

解決策を閉じて再開すると、私にとってはやっかいなことでした。

+2

これも私のために働いた。 – Jake

+0

私のために働いた。ありがとう! – Andrey

+0

2015 - 私のために働いた。ローカルDBファイルを削除した後、私はこの問題を始めました – workabyte

0

VS2013で同じエラーが発生しましたが、プロジェクトを再構築しようとすると発生します。私の状況で問題を解決する方法の下で、私はそれが他の人にも役立つことを願っています。

構成:

  • 私は、溶液中の別々のプロジェクトで私のtypescriptですファイルを持っています。
  • これらのプロジェクトが原因

VS 2012に移行するためだった:私はMicrosoft.Web.Publishing.targetsファイル内のエラーをクリックすると 私はプロジェクトは、これらのファイルのVS2012のバージョンを使用していたことを発見しました。それは、部分的にのみ移行されたVS2012からVS2013へのプロジェクトです。

ソリューション: オープンtypescriptですプロジェクト(最初のプロジェクトをアンロード)のための 検索:

 <PropertyGroup> 
     <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">12.0</VisualStudioVersion> 
     <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath> 
     </PropertyGroup> 
  • コメント行VSToolsPath
  • ファイルを保存して閉じ
  • プロジェクトをリロードプロジェクトがアップグレードされたことを通知するVisual Studioの移行画面 が表示されます。

関連する問題