msbuild 相关问题

Microsoft Build Engine,也称为MSBuild,是托管代码的构建平台,是.NET Framework的一部分。

使用 TeamCity 运行构建时出现 MSBuild 错误 MSB3202

我的任务是为我们的小型 .Net 商店研究和实施 CI。经过研究后,我们选择 TeamCity 进行自动化构建。安装 TeamCity 和 MSBuild 非常困难...

回答 4 投票 0

在docker容器中为cmake配置Visual Studio工具集路径

我使用了一个例子 微软将为 C++ 应用程序创建一个构建容器。 它可以工作,我可以使用 vs 提示符来运行 msbuild.exe。 尽管如此,当我尝试使用 cmake 来预配置我的项目时,它

回答 1 投票 0

在命令行上覆盖属性表

我正在寻找一种将命令行上的属性表(.props 文件)传递给 MSBuild 的方法。 MSBuild 似乎没有针对属性表的特定开关,但有一个 /property 命令...

回答 1 投票 0

nuget.dgspec.json 文件的用途是什么?

本地存储库服务器隔离了某些包。由于 nuget 恢复从存储库中选择了 dotnet 运行时 6.0.18,因此由于该包的隔离,nuget 恢复始终失败...

回答 1 投票 0

有没有办法知道Visual Studio中活动的解决方案平台?

我正在 Visual Studio 中创建一个 C# 解决方案,根据活动解决方案平台的设置,我希望某些项目的行为略有不同。请参阅下面的配置

回答 1 投票 0

VS Code、.NET Core - 使用 MSBuild Target 构建之前更新版本

我试图在编译项目之前自动更新 .csproj 文件中的 Version 元素,以便输出的 dll 具有该版本号。 我的要求: 仅在发布版本上运行

回答 1 投票 0

如何解决尝试在 Windows Server 2019 上的 Visual Studio 2022 上构建 Azure DevOps 代码时显示的以下错误

##[错误]C:\Program Files\Microsoft Visual Studio�2\Community\MSBuild\Current\Bin\Microsoft.Common.CurrentVersion.targets(1217,5):错误 MSB3644:.NETFramework 的参考程序集,维西...

回答 5 投票 0

命令退出,代码为 2 Visual Studio 2017

当我尝试构建 Windows 应用程序时,出现以下错误。 命令 “C: epos\CommunityLive\CL_GateApp\signing\StrongNameUnsignedAssemblies.bat C: epos\CommunityLive\

回答 1 投票 0

如何使用预处理器指令有条件地包含特定的 CSS 片段?

问题: 我有两个构建配置。每个都有自己的预处理器符号:DEV 和 PROD。 我希望每个版本都有自己的背景图像颜色。 对于 C# 文件,我知道我可以使用

回答 1 投票 0

Azure DevOps 构建管道损坏 unicode 文件名

我们有一个针对 .NET Framework 4.7.2 的遗留 .NET MVC 5 项目。我们使用经典界面在 Azure Devops 中创建了一个构建管道(稍后我们将切换到 YAML),并且我们有一个托管代理...

回答 1 投票 0

Blazor:如何使用预处理器指令有条件地包含特定的 CSS 片段?

问题: 我有两个构建配置。每个都有自己的预处理器符号:DEV 和 PROD。 我希望每个版本都有自己的背景图像颜色。 对于 C# 文件,我知道我可以使用

回答 1 投票 0

MSBuild:如何使用预处理器指令有条件地包含特定的 CSS 片段?

问题: 我有两个构建配置。每个都有自己的预处理器符号:DEV 和 PROD。 我希望每个版本都有自己的背景图像颜色。 对于 C# 文件,我知道我可以使用

回答 1 投票 0

Visual Studio 未将 WSL 列为平台工具集

我正在遵循本教程。一切似乎都很好(我认为 Linux 子系统设置得很好),但 WSL 并未显示为用于编译 C/C++ 项目的平台工具集。 使用视觉...

回答 2 投票 0

错误 MSB3103:Resx 文件无效。找不到指定的模块

我第一次尝试使用 Jenkins 和 build.ps1 在 docker 中构建 c# 项目。 详细错误: C:\myproject\Properties\Resources.resx : 错误 MSB3103: 无效的 Resx 文件。输入 d...

回答 4 投票 0

错误 NU5129:- 至少找到一个 .targets 文件,但未找到“build/xyz.targets”

回答我自己的问题以帮助将来的人,这是值得鼓励的。 VS2022、.Net 6.0、Asp.Net - WebAPI。 对项目文件进行一些更改后,我们在构建中看到了此错误...

回答 1 投票 0

VS2022从类库csproj获取主可执行文件的目标框架

我们需要从类库项目的csproj文件中获取Main可执行程序集的TargetFramework。这样类库就可以针对 net7.0-android。下面的代码失败并显示

回答 1 投票 0

如何在 Visual Studio 中暂时禁用构建事件?

有没有办法暂时禁用构建前和构建后事件? 即在没有构建事件的情况下构建(这需要一些时间,但对于运行并不总是至关重要) 目前,我已经缩小了...

回答 5 投票 0

MSBuild 表示 XML 文档文件(从 C# 注释创建)不存在,但它在构建之前就存在

当我在 MSBuild 项目上设置属性 时,即使所有文件都存在且是最新的,CoreCompile 任务也始终会执行。 MSBuild 说它运行 CoreCompil...

回答 1 投票 0

如何创建可快速更新的自定义项目文件(并避免其他问题)?

我正在尝试创建一个执行几个自定义步骤的项目文件(具体来说,它“包装”现有的 Angular CLI 项目)。 这是我最好的尝试(myproject.csproj): 我正在尝试创建一个执行几个自定义步骤的项目文件(具体来说,它“包装”现有的 Angular CLI 项目)。 这是我最好的尝试(myproject.csproj): <Project ToolsVersion="Current" DefaultTargets="Build"> <PropertyGroup> <ProjectGuid>{...some-guid...}</ProjectGuid> <!-- do not include files by default --> <EnableDefaultItems>false</EnableDefaultItems> <!-- this removes 'Publish...' menu in VS --> <OutputType>Library</OutputType> <!-- output directory name --> <AngularProject>MyWebFiles</AngularProject> </PropertyGroup> <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'"> <PlatformTarget>x64</PlatformTarget> <OutputPath>bin\Debug\</OutputPath> </PropertyGroup> <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'"> <PlatformTarget>x64</PlatformTarget> <OutputPath>bin\Release\</OutputPath> </PropertyGroup> <ItemGroup> <AngularFile Include="**" Exclude="node_modules\**" /> </ItemGroup> <Target Name="Build" Inputs="@(AngularFile)" Outputs="$(OutputPath)$(AngularProject)\index.html"> <Exec Command="ng build --no-progress --output-path $(OutputPath)$(AngularProject)\" Condition="'$(Configuration)'=='Debug'" /> <Exec Command="ng build --no-progress --output-path $(OutputPath)$(AngularProject)\ --prod" Condition="'$(Configuration)'=='Release'" /> </Target> <Target Name="Clean"> <RemoveDir Directories="$(OutputPath)$(AngularProject)\" /> </Target> <Target Name="Rebuild" DependsOnTargets="Clean;Build" /> </Project> 一切正常,我可以将这个项目添加到VS2019解决方案中,编译等。但它有问题: 快速更新检查不起作用。 相关日志记录会产生以下结果: Build started... 1>Project 'myproject' is not up to date. Error (0x8000FFFF). 我尝试过手动指定快速最新的文件(通过UpToDateCheckInput等),但它不起作用(大概是因为它依赖于当您指定Sdk属性时引入的附加定义) Project标签)。 VS 配置管理器有空的“平台”组合框。我希望能够在其中包含x64: 很明显 PlatformTarget 被 VS 忽略了。 在 VS 中打开项目会创建 obj\x64\Debug\TempPE\ 目录(如果当前 Configuration 是 Debug)。其中不会生成任何内容——最好避免创建它。 这3个问题可以解决吗?我怀疑相关子系统期望生成某些值/属性,我尝试挖掘 VS 附带的 .props/.targets 试图找到它们,但很快就迷失了。 具体操作方法如下: <Project Sdk="Microsoft.Build.NoTargets/3.2.14"> <ItemGroup> <PackageReference Include="Microsoft.Build.NoTargets" Version="3.2.14" /> </ItemGroup> <PropertyGroup> <!-- Any target framework you want as long as its compatible with your referenced NuGet packages --> <TargetFramework>net462</TargetFramework> <Platforms>x64</Platforms> <!-- Do not add TargetFramework to OutputPath --> <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath> <!-- Do not expect pdb files to be generated (this is for fast up-to-date check) --> <DebugType>None</DebugType> <!-- Do not include files by default --> <EnableDefaultItems>false</EnableDefaultItems> <!-- Output subdir name --> <AngularProject>MyWebFiles</AngularProject> </PropertyGroup> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> <OutputPath>..\..\Bin\Debug\</OutputPath> <BuildCommand>ng build --no-progress --output-path $(OutputPath)$(AngularProject)\</BuildCommand> </PropertyGroup> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> <OutputPath>..\..\Bin\Release\</OutputPath> <BuildCommand>ng build --no-progress --output-path $(OutputPath)$(AngularProject)\ --prod</BuildCommand> </PropertyGroup> <ItemGroup> <None Include="**" Exclude="node_modules\**;$(BaseIntermediateOutputPath)\**;$(MSBuildProjectFile)" /> <!-- This deals with fast up-to-date checks --> <UpToDateCheckBuilt Original="package-lock.json" Include="node_modules/.build" /> <UpToDateCheckInput Include="@(None);$(MSBuildProjectFile)" Set="AngularFiles" /> <UpToDateCheckOutput Include="$(OutputPath)$(AngularProject)\index.html" Set="AngularFiles" /> </ItemGroup> <Target Name="InitModules" Inputs="package-lock.json" Outputs="node_modules/.build"> <Exec Command="npm ci --no-progress --no-color" YieldDuringToolExecution="true" /> <Exec Command="cd . &gt; node_modules/.build" /> </Target> <Target Name="BuildAngular" BeforeTargets="AfterBuild" Inputs="@(None);$(MSBuildProjectFile)" Outputs="$(OutputPath)$(AngularProject)\index.html" DependsOnTargets="InitModules"> <Exec Command="$(BuildCommand)" YieldDuringToolExecution="true" /> </Target> <Target Name="CleanAngular" BeforeTargets="AfterClean"> <RemoveDir Directories="$(OutputPath)$(AngularProject)\" /> </Target> </Project> 备注: 它仍然会生成额外的本地目录(obj),但可以通过覆盖IntermediateOutputPath将其移走 编辑: VS2019 的最新版本拒绝加载此类项目 - 您需要安装 .NET SDK (out of support) 单个组件(在 Visual Studio 安装程序中)来修复该问题。

回答 1 投票 0

排除资产在本地工作但不在构建服务器上

我有一个使用nuget包(winscp)的项目,通常会将winscp.exe复制到bin文件夹中。我必须从另一个位置运行 exe,所以该副本不是我要找的(

回答 2 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.