尝试在Linux上编译KestrelHttpServer
作者:网络转载 发布时间:[ 2015/7/31 11:33:51 ] 推荐标签:操作系统
Kestrel是目前在非Windows平台上运行ASP.NET 5应用程序的可用Web服务器,但微软似乎将它冷落在一边,源代码更新很慢。
试着在Linux上编译Kestrel的源代码,遇到了很多问题。在这篇博文中记录一下。
运行编译命令:
./build.sh
出错信息:
-bash: ./build.sh: Permission denied
修复方法:
chmod +x build.sh
再次编译,出错:
./build.sh: line 31: packages/KoreBuild/build/kvm.sh: No such file or directory
./build.sh: line 35: kvm: command not found
修复方法:在build.sh中删除以下的代码:
if ! type k > /dev/null 2>&1; then
source packages/KoreBuild/build/kvm.sh
fi
if ! type k > /dev/null 2>&1; then
kvm upgrade
fi
继续编译,出错:
Unable to locate xunit.runner.kre >= 1.0.0-*
Writing lock file /data/git/KestrelHttpServer/test/Microsoft.AspNet.Server.KestrelTests/project.lock.json
Restore complete, 192ms elapsed
Total time 1067ms
Errors in /data/git/KestrelHttpServer/test/Microsoft.AspNet.Server.KestrelTests/project.json
Unable to locate xunit.runner.kre >= 1.0.0-*
修复方法:将 test/Microsoft.AspNet.Server.KestrelTests/project.json 文件中的 kre 改为 aspnet,vim 命令如下:
:%s/kre/aspnet/g
继续编译,出现错误:
/data/git/KestrelHttpServer/src/Kestrel/ServerFactory.cs(1,24): error CS0234: The type or namespace name 'Hosting' does not exist in the namespace 'Microsoft.AspNet' (are you missing an assembly reference?)
...
修复方法:修改 src/Kestrel/project.json 中的 frameworks 部分,修改为:
"frameworks": {
"dnx451": { },
"dnxcore50": { }
}
继续编译,出现新的错误:
src/Kestrel/ServerFactory.cs(4,27): error CS0234: The type or namespace name 'ConfigurationModel' does not exist in the namespace 'Microsoft.Framework' (are you missing an assembly reference?)
修复方法:在 src/Kestrel/project.json 中添加 Microsoft.Framework.ConfigurationModel 的引用
{
"dependencies": {
"Microsoft.Framework.ConfigurationModel": "1.0.0-*"
}
}
继续编译,出现新的错误:
src/Kestrel/ServerRequest.cs(1,24): error CS0234: The type or namespace name 'HttpFeature' does not exist in the namespace 'Microsoft.AspNet' (are you missing an assembly reference?)
修复方法:在 src/Kestrel/project.json 中添加 Microsoft.AspNet.HttpFeature 的引用
"Microsoft.AspNet.HttpFeature": "1.0.0-*"
但该修复方法无效,依然出现同样的错误。。。卡在这,没找到解决方法。
于是,这次编译尝试 Kestrel 失败。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11