1 hez2010 198 天前 可以试试给 dotnet build 加几个参数:-clp:PerformanceSummary -tl:false 这样能看到编译时间到底花在了具体哪个任务上 |
![]() | 2 liuliuliuliu PRO 这很显然需要一个日志来看看时间都花费在哪里了。 build 的时候加个参数吧 dotnet build -bl:SpecificStep.binlog |
3 supemaomao 198 天前 via Android 如果是编译为镜像,那么原因可能是 net8 不支持仿真编译了,你需要更改编译的命令,让其使用交叉编译。这个问题之前遇到过。 |
4 drymonfidelia OP @hez2010 ![]() |
5 drymonfidelia OP 好奇怪的问题,似乎同一套代码,刚才测试 1 楼的参数 3 分钟就编译完了,现在测试 2 楼的参数又编译了 10 分钟还没出来,每次编译时间完全随机 |
![]() | 6 v1 197 天前 @drymonfidelia 或许是 linux 下编译器的问题呢?而不是项目代码 |
![]() | 7 netnr 197 天前 ![]() 估计是 dotnet restore 下载资源网速不稳定 改善网络 外面发布文件,再基于发布文件+runtime 打包,避免编译 |
![]() | 8 beginor 197 天前 via Android 加上加个 no restore ,不联网检查 nuget 包, 看看是不是网络问题 |
9 tusj 197 天前 说两个微软给我的印象: 1 、大学时第一次接触 Visual Studio ,进去之后字体默认是宋体,编程字体用非等宽,写出来那个代码看着非常膈应!(当然可以调整,但非要让每一个人一上来都调整一遍?这不就做事做不到位,招人恶心嘛)。第一次印象就很差,任你网上再吹什么宇宙第一 IDE ,内心还是抗拒。 2 、dotnet7 出来的时候,试了一下,Mac 电脑上命令行 init 一个项目,要好几秒。我心想,就建几个空目录,要好几秒?印象又一次很差!直接从 init 到放弃!任你网上吹什么不考虑工作生存压力,心中理想代码什么写 C#, 什么 dotnet 别提多爽云云。。。我内心还是抗拒,完全不信! |
![]() | 10 dabao 197 天前 换一台 linux 编译,排查下 |
![]() | 11 AlexBob 197 天前 买个墙服务器编译,就是下载网络问题,不用看 |
12 liuidetmks 197 天前 哥们,你到底是干嘛的,高强度刷 V 站发帖,各方面问题都涉及,业务这么广的吗 |
13 kneo 197 天前 跑个 benchmark 吧。有时候是服务器的问题。 |
![]() | 14 qW7bo2FbzbC0 197 天前 墙内下载依赖包的确是会有网络问题 |
![]() | 15 chunqiu233 197 天前 @liuidetmks 哈哈 |
19 asuraa 197 天前 是不是加 arm 了 如果你加 arm 和 arm64 之类的确实是这样的,我用 github action 编译 x86 非常快,但是一旦启用 arm64 就慢成屎, 甚至会超时 |
23 drymonfidelia OP @netnr 你看我的 log ,restore 和 build 是完全分开的,restore 最多 50 秒 我用的是 aws ,应该不存在网络不稳定 |
![]() | 24 liuliuliuliu PRO @nmap 2025 年了还能有人问出这个问题…… |
![]() | 25 netnr 197 天前 build 会内部调用 restore ,你可以创建一个空项目,无任何依赖打包,对比一下 |
26 drymonfidelia OP |
27 mayli 196 天前 编译半小时肯定不正常,才 15k 代码,盲猜网络问题,可能是 dns? 编译的时候看下 ps, top 和 log, 应该比较容易看出是哪里卡住 |
28 nivalxer 181 天前 nuget 的网络问题,在 build 阶段还是会走一次还原包。可以尝试加上 nuget 缓存看看: restore 、build 阶段都可以加 例如: RUN --mount=type=cache,id=nuget,target=/root/.nuget/packages dotnet publish "xxxxx.csproj" -c Release -o /app/publish |
29 nivalxer 181 天前 补充一下:如果是想最终打包为镜像发布,可以直接用 publish |
30 hez2010 180 天前 @drymonfidelia 不应该,按理来说应该是会出现性能数据总结的 换成 /clp:PerformanceSummary /tl:false 试试呢? |
33 tusj 174 天前 @niubiman 我举例微软 IDE 和 dotnet7 的例子是想说,微软总是在匪夷所思的地方,搞出莫明其妙的问题!令人失望。 这种例子多得很:windows terminal 上 git version 卡死。装了微软电脑管家之后,打开 git bash 有时要 10 秒以上,匪夷所思! 什么信息差,这几个问题你倒是解释解释? |
35 ximi522 4 小时 43 分钟前 感觉可能是你的 nuget 包下载到了 linux 的 temp 目录里,然后被定期删掉了,就需要重新下载,windows 不会有这种问题。可以看看这个思路。 |