问题标签 [msbuild-target]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
msbuild - MSBuild 将参数传递给 CallTarget
我正在尝试在我的 MSBuild 文件中创建一个可重用的目标,以便可以使用不同的参数多次调用它。
我有这样的骨架:
但我不知道如何允许将参数传递给CallTarget
,然后依次传递给Target
它本身。
svn - MSBuild SvnInfo - 哪些目标输入是正确的?
我在 MSBuild 脚本中使用SvnInfo 任务:
$(Sources)
仅包含源文件。
显然SvnInfo
取决于$(Sources)
. Target 然后使用 info 生成带有修订号的输出文件。
实际上,我想在修订号更改时运行 SvnInfo,但在修订号与上次运行相同时不运行 Target(使用增量构建)。
如何在目标中正确指定输入(标签中的属性Inputs
,Target
包含SvnInfo
任务调用)?
我是通过以下方式制作的:
在我看来它的解决方法,因为理想情况下我应该知道哪些文件SvnInfo
取决于哪些文件而不用猜测。是否有可能获得这样的信息?
我也不知道.svn
文件夹是否被修改。
msbuild - 将自定义 msbuild 目标从解决方案传递到项目
我有一个包含大量关联 .csproj 文件的解决方案。
每个 .csproj 文件都有一个<Target Name="PublishQA">...
.
当我尝试编译整个解决方案时构建失败:
当我.csproj
直接构建项目时,它构建得很好。
如何告诉 msbuild 将目标传递给项目文件???
visual-studio-2010 - 在 Visual Studio 2010 下运行除 DefaultTarget 之外的项目配置
我的 csproj 中有一个 MSBuild 目标,用于在构建后将我的 Web 应用程序的文件和文件夹复制到目标路径。
如果我通过命令行使用目标“PublishToFileSystem”调用 MSBuild,一切正常。
但现在我想“使用”这个目标也用于 Visual Studio 中的特殊配置(如发布、调试......)。
如何将配置分配给另一个目标,而不是使用 DefaultTargets 在项目中设置的 DefaultTarget“构建”:
谢谢,康拉德
visual-studio-2010 - MSBuild 命令不会从 Visual Studio 内部运行
我一直在对开源MarkdownDeep进行一些修改, 但在发布版本时遇到了麻烦——该项目包括一个使用 Nuget.exe 进行一些打包的构建后任务。
我可以从 dos 框中执行命令而不会出现错误,但该步骤总是失败(从 VisualStudio 作为发布构建配置的一部分运行时出现错误:9009。
谁能想到这是为什么?
msbuild - 如何使用 msbuild 控制兄弟依赖目标的构建顺序?
在我的项目中,我有两个导入语句:
每个目标都有一个如下定义的属性组:
我想保证 TransformConfig 总是在 Package 之前运行。我不控制任何一个依赖目标,并且不希望显式编辑它们,因为每当我通过 NuGet 更新这些目标时,这些编辑都会被擦除。Package 目标始终首先运行,这是不可取的。
这可能吗?
msbuild - MSBuild 目标和 Visual Studio 2012 问题
我很难使用 Visual Studio 2012 UI 通过 Webdeploy 部署我的第三方非参考程序集。我有一个名为“库”的文件夹,其中包含一些程序集。通过我的 *.csproj 文件中的以下内容,我可以将Build Action设置为“ ThirdPartyAssemblies ”:
这很好用;当我构建时,程序集被复制到 bin 文件夹的根目录:-) 现在我遇到了一个问题:我无法通过 Webdeploy 将这些文件发布到服务器。我已经尝试了很多东西,似乎我找不到适合此任务的 MSBuild 目标......使用 Visual Studio 2010,我可以使用它:
问题是; OnAfterCopyAllFilesToSingleFolderForPackage
不再调用目标:- /
在深入研究之后C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\Web\Microsoft.Web.Publishing.targets' file, I've also tried 'OnAfterCopyAllFilesToSingleFolderForMsdeploy
,但我无法让它工作。
谁能告诉我可以使用什么目标将这些程序集复制到带有 Webdeploy 的 Package 文件夹/服务器?
为什么 Visual Studio 2012 不将完整的 bin 文件夹复制到 Package 文件夹中?
msbuild - msbuild,覆盖不同文件中的属性值
我正在尝试根据另一个文件中的特定条件修改属性值。例如。我有一个调用目标文件的文件。
我有一个文件,其中包含要决定的项目组和修改的目标
但是当我打印“人”时,我得到空字符串。我检查了是否调用了“SetName”并设置了正确的名称。我在这里想念什么?
visual-studio-2012 - MSBuild 和 SQL Server 数据库项目:将部署和发布目标绑定到构建配置
Visual Studio 2012。SQL Server 数据库项目。
解决方案中创建了四个构建配置:Debug、DevDb、TestDb、LocalDb。
在项目中创建了三个发布配置文件:DevDb.publish.xml、TestDb.publish.xml、LocalDb.publish.xml
按下 F5 按钮(!)我想:
- 如果 构建配置为Debug ,则使用项目属性中的连接字符串部署项目。
- 如果构建配置为 DevDb、TestDb或LocalDb ,则使用相应发布配置文件中的连接字符串发布项目。
为此,我编辑项目 (.sqlproj) xml,尝试捕获对 Deploy 目标的调用并用自定义行为替换标准 Deploy 目标:
第二条语句运行良好,我将部署到正确的目的地。
问题出在第一条语句上——它产生了循环依赖。
错误 MSB4006:在涉及目标“部署”的目标依赖图中存在循环依赖。
我的问题是:如何与标准目标相交(捕获和替换)以及是否需要再次调用标准目标?
还是我想重新发明轮子,还有另一种方法可以做我想做的事?(我想要的内容在上面的“按下 F5 按钮”下进行了描述:)
visual-studio-2012 - SQL 数据库项目:根据构建配置构建不同的脚本
我要解决的问题是根据构建配置构建不同的脚本。
假设我们有两个 SQL Server 实例:
- 带有连接的链接服务器的企业版
- 用于离线开发和单元测试的 LocalDb 版本
当 LocalDB 用本地表替换这些视图时,企业版具有链接服务器的视图。
那些链接服务器视图和本地表具有相同的名称和字段集。因此默认情况下它们不包含在构建中(构建操作 = 无)。相反,它们包含在项目文件的 BeforeBuild Target 中的构建中。
但问题是 Visual Studio 缓存了 DB 模型,如果我们首先为 LocalDb 构建项目,然后尝试为企业配置构建项目 - Visual Studio 输出错误:
错误:SQL71508:模型已经有一个同名的元素
如果要关闭并打开解决方案或卸载项目并重新加载项目,Visual Studio 将重新创建 dbmdl 文件,并且正在构建企业配置而不会出现错误。
所以我的假设是如果我刷新 dbmdl 缓存,我会顺利构建而不会出错。
当您在 Visual Studio 2012 中打开或重新加载 SQL Server 数据库项目时,它会创建一个扩展名为dbmdl的文件,这是一个反序列化和缓存的数据库模型,如此处所述。
在重新创建 dbmdl 文件时,Visual Studio 输出以下内容:
如何强制 Visual Studio 在不重新加载项目且不更改项目 xml 文件的情况下刷新 dbmdl 缓存?
有没有办法刷新 dbmdl 缓存,将命令放入项目 xml 文件的 BeforeBuild 或 AfterBuild 目标?
或者解决问题的整个方法是错误的,还有另一种方法可以根据构建配置构建不同的脚本?