Fake.Build.CMake 6.1.0
dotnet add package Fake.Build.CMake --version 6.1.0
NuGet\Install-Package Fake.Build.CMake -Version 6.1.0
<PackageReference Include="Fake.Build.CMake" Version="6.1.0" />
paket add Fake.Build.CMake --version 6.1.0
#r "nuget: Fake.Build.CMake, 6.1.0"
// Install Fake.Build.CMake as a Cake Addin #addin nuget:?package=Fake.Build.CMake&version=6.1.0 // Install Fake.Build.CMake as a Cake Tool #tool nuget:?package=Fake.Build.CMake&version=6.1.0
FAKE - F# 构建 ·
"FAKE - F# 构建" 是一个跨平台构建自动化系统。由于它与 F# 的集成,它可以使用 .NET 框架和函数式编程的所有优势,包括广泛的类库、强大的调试器和如 Visual Studio 或 MonoDevelop 之类的集成开发环境,它们提供语法高亮和代码完成。
新的 DSL 被设计为简洁、类型化、声明性、可扩展且易于使用。
以下是一个了解 FAKE 的示例
// build.fsx
#r "paket:
nuget Fake.Core.Trace
nuget Fake.Core.Target //"
// include Fake modules, see Fake modules section
open Fake.Core
// *** Define Targets ***
Target.create "Clean" (fun _ ->
Trace.log " --- Cleaning stuff --- "
)
Target.create "Build" (fun _ ->
Trace.log " --- Building the app --- "
)
Target.create "Deploy" (fun _ ->
Trace.log " --- Deploying app --- "
)
open Fake.Core.TargetOperators
// *** Define Dependencies ***
"Clean"
==> "Build"
==> "Deploy"
// *** Start Build ***
Target.runOrDefault "Deploy"
本示例拉取Fake的Target
和Trace
模块,并定义了三个目标:Clean
、Build
和Deploy
。与.Net项目类似;
- 使用
Clean
目标可以在构建之前清理项目, - 使用
Build
目标来调用MSBuild或任何适用于您应用程序的构建步骤, - 使用
Deploy
目标可以将构建后的项目推送到云服务。
在底部,示例定义了目标依赖关系,指定必须先执行Clean
,然后执行Build
,最后执行Deploy
。
要求
FAKE运行器需要在机器上安装.Net v6 SDK才能运行。选择.Net v6是因为它是当前.Net的长周期版本。
FAKE 5没有这个要求。在没有安装.NET 6 SDK的情况下也可以使用FAKE 5运行器,因为它会默认使用NETSTANDARD2.0程序集。但我们建议您查看运行FAKE的不同方式。
FAKE模块的目标框架是net6
和netstandard2.0
。请点击此链接查看由netstandard2.0
支持的.Net和.NET Framework的版本列表。
安装
- 可以选择:下载并安装Dotnet SDK,然后运行
dotnet tool restore
,最后运行dotnet fake build
- 或者安装FAKE 5或更高版本(例如通过
choco install fake -pre
)并运行fake build
注意:您可以在贡献页面上找到更多详细信息
请确保已启用长路径:请参见如何启用长路径否则测试套件将失败(但是,编译应该可以工作)
用法
有关如何在入门指南中使用FAKE的详细说明。
NuGet包
包名称 | NuGet |
---|---|
Fake-Cli |
|
Fake.Core.Target |
|
Fake.Core.Context |
|
Legacy FAKE |
贡献
请参阅贡献页面。
维护者
虽然该项目托管在fsprojects组织内,但它不是由F# Core引擎小组维护和管理的。F# Core引擎小组承认,该项目的独立所有者和管理员是Steffen Forkmann。
产品 | 版本 兼容的以及额外的计算目标框架版本。 |
---|---|
.NET | net5.0 已计算。 net5.0-windows 已计算。 net6.0 兼容。 net6.0-android 已计算。 net6.0-ios 已计算。 net6.0-maccatalyst 已计算。 net6.0-macos 已计算。 net6.0-tvos 已计算。 net6.0-windows 已计算。 net7.0 已计算。 net7.0_ANDROID 已计算。 net7.0-ios 已计算。 net7.0-maccatalyst 已计算。 net7.0-macos 已计算。 net7.0-tvos 已计算。 net7.0-windows 已计算。 net8.0 已计算。 net8.0-android 已计算。 net8.0-browser 已计算。 net8.0-ios 已计算。 net8.0-maccatalyst 已计算。 net8.0-macos 已计算。 net8.0-tvos 已计算。 net8.0-windows 已计算。 |
.NET Core | netcoreapp2.0 已计算。 netcoreapp2.1 已计算。 netcoreapp2.2 已计算。 netcoreapp3.0 已计算。 netcoreapp3.1 已计算。 |
.NET Standard | netstandard2.0 兼容。 netstandard2.1 已计算。 |
.NET Framework | net461 已计算。 net462 已计算。 net463 已计算。 net47 已计算。 net471 已计算。 net472 已计算。 net48 已计算。 net481 已计算。 |
MonoAndroid | monoandroid 已计算。 |
MonoMac | monomac 已计算。 |
MonoTouch | monotouch 已计算。 |
Tizen | tizen40 已计算。 tizen60 已计算。 |
Xamarin.iOS | xamarinios 已计算。 |
Xamarin.Mac | xamarinmac 已计算。 |
Xamarin.TVOS | xamarintvos 已计算。 |
Xamarin.WatchOS | xamarinwatchos 已计算。 |
-
.NETStandard 2.0
- Fake.Core.Environment (>= 6.1.0)
- Fake.Core.Process (>= 6.1.0)
- Fake.Core.Trace (>= 6.1.0)
- Fake.IO.FileSystem (>= 6.1.0)
- FSharp.Core (>= 8.0.301)
-
net6.0
- Fake.Core.Environment (>= 6.1.0)
- Fake.Core.Process (>= 6.1.0)
- Fake.Core.Trace (>= 6.1.0)
- Fake.IO.FileSystem (>= 6.1.0)
- FSharp.Core (>= 8.0.301)
NuGet 包
此包未由任何 NuGet 包使用。
GitHub 仓库
此包未由任何流行的 GitHub 仓库使用。
版本 | 下载 | 最后更新 |
---|---|---|
6.1.0 | 49 | 8/5/2024 |
6.0.0 | 242 | 2/21/2023 |
6.0.0-beta001 | 110 | 12/21/2022 |
6.0.0-alpha004 | 210 | 11/17/2022 |
6.0.0-alpha003 | 114 | 11/11/2022 |
6.0.0-alpha002 | 124 | 11/1/2022 |
6.0.0-alpha001 | 109 | 11/1/2022 |
5.23.1 | 414 | 10/21/2022 |
5.23.0 | 440 | 8/1/2022 |
5.23.0-alpha002 | 142 | 7/22/2022 |
5.23.0-alpha001 | 148 | 7/15/2022 |
修复BUG:MSBuild.build 在属性末尾添加了坏的字符串,感谢 @0x53A - https://github.com/fsprojects/FAKE/issues/2738
修复BUG:允许在 Linux 上设置 Msbuild 最大 CPU,感谢 @TheAngryByrd - https://github.com/fsprojects/FAKE/pull/2772
功能增强:向 Git 函数添加了 shorthash,感谢 @voronoipotato - https://github.com/fsprojects/FAKE/pull/2752
功能增强:支持 `/tl:[auto:on:off]` msbuild 标志,感谢 @smoothdeveloper - https://github.com/fsprojects/FAKE/pull/2768
功能增强:修复了在 .NET 8.0 环境项目中使用的问题。
功能增强:添加了 Context.setExecutionContextFromCommandLineArgs,感谢 @cataggar - https://github.com/fsprojects/FAKE/pull/2750