gpt4 book ai didi

jenkins - 使用 --targetprofile 参数调用 F# 编译器的 Jenkins 构建错误

转载 作者:行者123 更新时间:2023-12-02 01:38:41 24 4
gpt4 key购买 nike

我们正在 Jenkins 上构建 Azure 解决方案。这包含多个 F# 项目、一个 Azure 云部署项目和一个 C# Azure 辅助角色。

在开发者盒子上构建良好。在 Jenkins 上构建时,我们得到:

"C:\Program Files (x86)\Jenkins\jobs\REDACTED.sln" (Clean;Build target) (1) ->
"C:\Program Files (x86)\Jenkins\jobs\REDACTED QA\workspace\REDACTED\REDACTED.csproj" (default target) (5:4) ->
"C:\Program Files (x86)\Jenkins\jobs\REDACTED QA\workspace\REDACTED.FSharp.AWS.S3\REDACTED.FSharp.AWS.S3.fsproj" (default target) (6:6) ->
(CoreCompile target) ->
FSC : error FS1052: Invalid value 'Qa' for '--targetprofile', valid values are 'mscorlib' or 'netcore'. [C:\Program Files (x86)\Jenkins\jobs\REDACTED QA\workspace\REDACTED.FSharp.AWS.S3\REDACTED.FSharp.AWS.S3.fsproj]

问题似乎与一个名为“TargetProfile”的 MSBuild 参数有关,我们需要 Azure 方面指定要使用的配置(例如 UAT 或 QA)和一个名为 --targetprofile 的未记录的 F# 参数,该参数需要值mscorlib 或 netcore。

我们可能想要一种解决方法,将“targetprofile”的这两种用法分离。理想情况下,我们不想摆弄诸如 F# 的目标文件之类的东西,因为显然我们必须记住在我们现在和将来可能构建的所有地方应用它。

最佳答案

Blah,MSBuild 属性名称之间的冲突。

也许您可以通过在项目中定义一个直接在 F# 编译目标之前运行的目标来变通,并将 F# TargetProfile 设置为 mscorlib,然后还定义一个目标,该目标在 F# 编译后直接运行,将值交换回之前的值。

从快速测试来看,这似乎工作正常。

<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">

<PropertyGroup>
<!-- assume TP has Azure-specific value -->
<TargetProfile>QA</TargetProfile>
</PropertyGroup>

<Target Name="BeforeFSharpCompile" BeforeTargets="CoreCompile">
<PropertyGroup>
<TempTargetProfile>$(TargetProfile)</TempTargetProfile>
<TargetProfile>mscorlib</TargetProfile>
</PropertyGroup>
<Message Text="Swapped from $(TempTargetProfile) to $(TargetProfile)" />
</Target>

<Target Name="AfterFSharpCompile" AfterTargets="CoreCompile">
<PropertyGroup>
<TargetProfile>$(TempTargetProfile)</TargetProfile>
</PropertyGroup>
<Message Text="Swapped back to $(TargetProfile)" />
</Target>

</Project>

关于jenkins - 使用 --targetprofile 参数调用 F# 编译器的 Jenkins 构建错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29672437/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com