虽然编译源码折腾了几个时间(卡在restore),最后还是跑起来了aspnetcore6.0mvc源码项目,下面说步骤,前提是网络能连外,对于不能连外的懒得折腾。

第一步

电脑找个地克隆下GitHub上的源码下来

git clone --recursive https://github.com/dotnet/aspnetcore.git

注意一定要带上 recursive,一次性把依赖给下载下来。

第二步

git tag 查看版本(注意该命令需要进入到下载的代码文件夹aspnetcore里执行),一直回车直到显示所有版本,选择自己想要的版本号,记下来,输入!退出。我选择NET6最新v6.0.9版本

第三步 执行 git checkout  v6.0.9拉取该版本。

第四步  找到该文件 aspnetcore\eng\scripts\InstallVisualStudio.ps1 目录下执行 .\InstallVisualStudio.ps1 -edition enterprise 默认下载vs2019的企业版本以及需要的以来组件,当然你可以修改这个文件下载最新的vs2022。该命令在powershell下面执行吗,如果有失败提示注意是不是powershell禁用了脚本执行。自行百度开启即可(管理员下执行 Set-ExecutionPolicy RemoteSigned)

接下来就是弹出安装vs了。(我安装完vs2019后直接卸载掉了,我本地是vs2022就没用下载下来的vs2019)

第五步 powershell下执行 .\restore  ,脚本在 aspnetcore下,文件就是restore.cmd。

最关键最耗时的一步。没有FQ或者网络不佳会卡死在这里。这里主要是下载aspnetcore\.dotnet这个文件夹,我这里编译完大小910m,占用920m。如果小于这个数或者卡在这里很遗憾是过不去了(用powershell和cmd都可以,ps的话需要加.\)

restore碰运气,如果红色错误多的话需要细看再细看,我遇到两个大的错误,一个是提示node的版本太老,就是我电脑版本是多少, 实际要求的版本是多少,我直接卸载重装了最新的node。该错误忘了截图

看看这个报错,无非就是一堆vcxproj结尾的文件里导入 props的文件不存在。首选发现全是aspnetcore\src\Servers\IIS\AspNetCoreModuleV2这个文件夹下面的错误。

打开其中一个文件看一下,按照VCTargetpath关键字每个文件都有三个地方,粗暴的注释掉。这个模块是iis的加载core模块,是c++写的,对运行起来调试代码基本无影响,我的项目现在都不用iis了。

还需注意一个地方就是该文件夹AspNetCoreModuleV2下面的所有test也要改,我看这是测试文件夹,粗暴的删除掉了,不会影响项目运行。

haixu 

restore需要几分钟时间的,最后就是这样的了(有错误不要紧,先自己看看能不能判断问题所在,不行就百度一下去查一查。)

第六步 测试mvc源码 ,通过脚本打开mvc解决方案,startvs Mvc.sln,后续就是编译代码调试代码了。

编译的时候发现这里有报错,懒得深究,调试有需要再解决了。再看注释很明显说不没有足够数据,crlf不能正确的到这里,就是不执行吧,那就粗暴的注释一下下了。

结束!

hosting模块调试,一样执行cmd命令 startvs.cmd打开vs2022

mvc模块调试

最新文章

  1. 【安卓】安卓res文件夹下的资源文件与R.java文件里面类的对应关系
  2. JDBC连接池
  3. Mac Pro 解压安装MySQL二进制分发版 mysql-5.6.30-osx10.11-x86_64.tar.gz(不是dmg的)
  4. bootstrap学习笔记之一
  5. Qt from Linux to Windows target
  6. selenium+python笔记10
  7. MySQL 5 绿色版(BAT版本) mysql50green转自http://hi.baidu.com/dburu/blog/item/e753fcc4362458aa8226accb.htmlMySQL 5 绿色版(BAT版本) By )
  8. 三方贸易-drop ship
  9. Docker学习笔记2
  10. Mybatis 数据库物理分页插件 PageHelper
  11. Jvm原理剖析与调优之内存结构
  12. Spring boot 入门(四):集成 Shiro 实现登陆认证和权限管理
  13. 关于VB里判断逻辑的说明
  14. [SDOI2011]消耗战(虚树)
  15. Java并发编程(七)-- ThreadLocal
  16. 『Python』源码解析_从ctype模块理解对象
  17. 干货|技术小白如何在45分钟内发行通证(TOKEN)并上线交易(附流程代码
  18. Java泛型深入理解(转载)
  19. linux ubuntu设置root用户初始密码
  20. 原创D3D几何实例化的DEMO

热门文章

  1. SSRS筛选器的IN运算(即包含于)用法
  2. XML方式配置切面
  3. 《吐血整理》保姆级系列教程-玩转Fiddler抓包教程(4)-会话面板和HTTP会话数据操作详解
  4. SpringMVC-02
  5. AI2(App Inventor 2) 离线版
  6. Eolink 推出面向中小企业及初创企业支持计划,为企业赋能!
  7. Hadoop学习 Hadoop-HA 解释和概念介绍
  8. 启用Hyper-v后,重启后界面提示 无法完成功能配置,正在撤销更改
  9. python 常用的魔法函数
  10. appache ab测试高并发