CoreCLR 以及CLI编译:
1.下载CMake(最好最新版) ,添加环境变量(微软利用这个跨平台公共语言运行库生成工具)
2 Python(最好最新版,且用Install形式安装,如果用Zip安装(有两个版本,一个嵌入式,一个EXE.这两个都不行,里面似乎没有自带的Pip,导致整个脚本引导错误) (用到了 Python脚本引导)添加到变量
3.PowerShell 安装4.0及其以上的版本(低于4.0 将导致ps文件无法引导)
以上安装成功如下:
生成成功如下
WebHost 以及Hosting等类库编译
基本的步骤:
1.到github clone source(这个版本可以因第三步而异,如果编译不过,可以切换2.0.0以上的任何分支再次进行编译)
2.搭建本地nugetserver(在引用了nuget.server之后,在.net 4.6.1版本中,要删除complie target选项,VS会生成两个造成冲突,注意apikey的key值,默认为空,可以给它添加一个,以便以后上传包)
3.编译clone下来的source(编译不通过可以查看powershell版本,以及其script设置情况,根据提示修改,也可以到github下载另外一个版本进行编译,一般的情况下,除了wehost和webhostbuilder所在的metapackages和hosting意外,其它的类库都很容易编译成功)
4.新建一个空.netcoreweb,引用本地nugetserver上面的包,以便进行调试。
默认的生成成功之后,会在sln或者csproject下面有artifacts文件夹,里面是当前项目所编译的所有包。由于编译复杂度有点高,请慎入。
请求被终止,未能创建SSL/TLS 安全通道
请求被中止: 未能创建 SSL/TLS 安全通道。
所在位置 C:\Users\Administrator\Desktop\Configuration-rel-2.0.0\Configuration-rel-2.0.0\build.ps1:25 字符: 17
+ throw $exception
+ ~~~~~~~~~~~~~~~~
+ CategoryInfo : OperationStopped: (:) [], WebException
+ FullyQualifiedErrorId : 请求被中止: 未能创建 SSL/TLS 安全通道。
解决方法:
在 build.ps1中 添加
[System.Net.ServicePointManager]::SecurityProtocol=[System.Net.SecurityProtocolType]::Tls12
Invoke-WebRequest https://
vctargetpath 出错,安装visualcppbuildtools_full.exe
Could not find/download: ".NET Core SDK" with version = 3.1.100-preview1-014400
Refer to: https://aka.ms/dotnet-os-lifecycle for information on .NET Core support
安装.net core sdk 3.1.100-preview1-014400版本
以上都需重启 cmd 然后执行脚本
powershell最低版本必4.0及其以上,越高越好。
假如说编译某个版本出现了错误,可以到github clone 2.00以上的任何版本下载下来,进行编译。
.\build 自带的有symbol 符号库,可以直接连接到visual studio 进行源码查看
也可以用dotnet pack 或者nuget spec pack 进行编译打包,然后上传到nugetserver,本地引用添加
visual stuido 可以直接识别下载的nuget ,假如说源码与nupkg 不在同一台机器上编译的(在一台机器上编译了Nupkg ,在另一台机器上使用这个包),VS会弹出对话框,然后进行对话框选择。如果是同一台,它会自动识别当前source位置,进行查看。(Java/.NET讨论群:676817308)