我面临着一个问题MSBuild
我自己无法克服它。因此我依靠社区的智慧。如何让MSBuild构建csproj构建sln中指定的自定义目标?
我有麻烦与
我有一个包含几个项目具有相关性在同一个解决方案的其他项目soluiton文件的真实情况。我想将自定义目标附加到项目的一个csproj文件并从命令行构建它。这将允许我为此项目制作所有必要的输出二进制文件,以便在构建自定义目标期间进一步处理。但主要的是,我不知道如何去做,谷歌搜索也没有帮助。
简化
为了让事情simplier我决定做一个新的C#控制台项目,一个简单的自定义目标添加到项目的文件,并努力使之建立。仍然没有成功!这里我到目前为止所做的:
创建一个解决方案的应用程序与默认控制台项目coreapp。这gaves我至少有两个文件:
- app.sln
- coreapp \ coreapp.csproj
修改coreapp.csproj与另外我的自定义目标的项目标签内
<Target Name="SampleTarget"> <Message Text="This is a SampleTarget" /> </Target>
在命令行上运行以下命令
%windir%\Microsoft.NET\framework\v3.5\msbuild.exe app.sln /t:coreapp:SampleTarget
甚至
%windir%\Microsoft.NET\framework\v3.5\msbuild.exe app.sln /t:coreapp.csproj:SampleTarget
结果
没有运气,面对错误
MSB4057: The target "coreapp.csproj:SampleTarget" does not exist in the project.
我怀疑MSBuild
认为服用点从我希望它认为根本的不同...
除此之外,我也试图在同一命令行上设置环境变量MSBuildEmitSolution = 1,以强制的MSBuild转储一个临时解决方案在处理解决方案时创建它。在这个文件中,确实没有这样的目标。不过,我想这不是原因,因为我让msbuild构建目标SampleTarget真正驻留的coreapp.proj。
问题是如何使用解决方案文件在此简化方案中构建SampleTarget,因为它可以包含包含此SampleTarget目标的项目的依赖关系?
我很乐意为任何形式的帮助或火力进一步调查!
这是否帮助? http://stackoverflow.com/questions/3397460/custom-common-target-to-build-a-solution –