【发布时间】:2017-08-29 16:19:43
【问题描述】:
创建新的 .NET Standard 类库项目后,我想覆盖 BeforeBuild msbuild 任务。以前,我会卸载并编辑 .csproj 文件,然后只需按照说明 To modify your build process, add your task inside one of the targets below and uncomment it. 并将我的逻辑添加到那里的模板中。新的 .NET Standard 项目不包含此类说明。
在原来的位置简单地添加任务是没有效果的。检查项目目录下dotnet msbuild /pp run 的输出可以看出原因是没有效果。我添加的任务稍后在统一输出中重新声明,我假设它会覆盖我的任务,因为似乎没有检查任务是否已经存在。
【问题讨论】:
-
是的!非常感谢,感谢 SO!
-
您对创建目标或运行类似任务的命令感兴趣吗? (构建脚本之前/之后)。 VS 2017 的 15.3 更新有一个新的编辑器,可以自动添加正确连接的新目标。
-
@ChristopherKing,这个问题呢?请告诉我有关此问题的最新信息吗?
-
@Leo-MSFT,最后我尝试修复我得到一个 msbuild 警告说我双重导入了
sdk.props和sdk.targets,它很可能是一个authoring error。所以我猜即使我添加了显式导入,MS 仍然会执行隐式导入。在我能够在没有警告的情况下导入之前,我不会接受答案。你看到警告了吗?
标签: c# msbuild visual-studio-2017 .net-standard