2017-03-22 3 views
4

10個のサブプロジェクトがありますが、10個のプロジェクトのうち3個がFAKEスクリプトでビルドされていますが、予想されるターゲットファイルは、この場所ではありませんが、currectlyそれはこの場所 D:\MyProject\BuildTools\StyleCop\v4.7\StyleCop.targetsに位置しています `インポートしたプロジェクト

"D:\MyProject\Project1\BuildTools\StyleCop\v4.7\StyleCop.targets" was no found . Confirm that the path in the <import> declaration is correct , and that the file exists on disk .

私問題は、これが間違った場所でファイルを検索している理由です。

Target "BuildApp" (fun _ -> 
!! "D:\MyProject\Project1\project1.csproj" 
    ++ "D:\MyProject\Project2\project2.csproj" 
    ++ "D:\MyProject\Project3\project3.csproj" 
    |> MSBuildRelease buildDir "Build" 
    |> Log "AppBuild-Output:" 

このことは可能です:私は、project1にするcsprojファイルがこの場所の下 D:\MyProject\Project1\Project1.csproj

であるので、これは私のFAKEコードされる$(SolutionDir)の問題だと思います私の新しいSolutionDirにcsprojファイルのパスを与えながら

答えて

4

ではなくMSBuildReleaseMSBuildReleaseExtを使用して渡すプロパティを試してみてください:

StyleCop.targetsファイルには、それらのcsprojファイルのそれぞれで参照されているどのよう
|> MSBuildReleaseExt buildDir [("SolutionDir", "path-to-your-solution.sln")] "Build" 
+0

?それは$(SolutionDir)かharcodedのURLか? –

+0

のように使用されます – JFI

+0

ありがとうございました。 – JFI

関連する問題