-
DevExpress 18.2.3 组件的源代码及 DevExpress.SourceBuilder.18.2
资源介绍
DevExpress 18.2源码编译指南及编译工具源码:
1、 安装DevExpressNETComponents
2、 复制并解压源码到DevExpressNETComponents的安装目录,通常是:
C:\Program Files (x86)\DevExpress 18.2\Components\Sources
3、 安装Visual Studio 2010 独立Shell,编译Windows Form和WPF的Design项目要引用到里面的程序集
注意:你不需要安装VisualStudio 2010 SP1完整版,安装这个166M(英文版,中文版为186M)的独立Shell就行了。这个对于18.2以前版本的源码编译也相同有效,一定要安装Visual Studio 2010 SP1是DevExpress官网和网上的一些编译说明的误导罢了。
下载地址:
https://aka.ms/VS2010/IsoShell/en-US (英文版)
https://aka.ms/VS2010/IsoShell/zh-CN (简体中文版)
4、 安装ASP.NET MVC 3,因为DevExpress.Web.Mvc5这个项目会引用ASP.NET MVC 3的程序集
下载地址:https://www.microsoft.com/zh-CN/download/details.aspx?id=1491
只需要下载其中的AspNetMVC3ToolsUpdateSetup.exe这个文件并安装
5、 安装TypeScript for Visual Studio,因为有二个项目需要编译TypeScript脚本
打开Visual Studio, 选择菜单上的工具->扩展和更新,搜索TypeScript并安装
我这边是安装了3.1.1版本,你也可选择安装其他版本。源码编译工具会根据你安装的版本自动Patch相关项目的TypeScriptToolVersion的设置值。
6、 将我提供的DevExpress.BuildFramework.exe及相关dll复制到Components目录中(复制到任何目录都行,直接运行也可以,其实对目录没有要求),并使用以管理员身份运行:
在点击Build按钮之前你需要关闭所有打开着的Visual Studio实例,否则会提示某个DevExpress程序集被占用而无法删除的错误。
这个SourceBuilderTool版本我已经作一些改动,使之适合18.2版本的编译。18.2版本的编译最好使用Visual Studio 2015,但是也可以用Visual Studio 2017。
编译大约要半个小时到一个小时左右,编译完成后会生成build_framework_error.log,如果正常的话,所有项目都应该编译成功。
7、 与18.2版本以前的源码编译相比,有以下区别:
a) 不再需要再安装SilverLight 5,编译时根本用不到,我已经把这个检查去掉了。
b) 不再需要查找缺少的程序集并用Gacutil 注册到全局程序集中了。像Newtonsoft.Json,dotless,SharpZipLib等这些第三方程序集,SourceBuilderTool 1.05自动会通过Nuget命令行进行下载。另外,我已经把包括packages.config的几个项目,也用Nuget命令行自动下载了。所以你不需要注册任何第三方程序集了。
c) SourceBuilderTool通过检查google.com来测试是否联网的逻辑我已经改为检查nuget.org了,你无需翻\墙了。
8、 其他说明
a) 18.2版本最佳编译环境是Visual Studio 2015(MSBuild 14),但经过改造的源码编译工具支持Visual Studio 2017+(MSBuild 15+)。18.2版本要求C# 6语言版本,对应的.NET Framework 为4.5.2。.NET Framework 4.0仅支持C# 5。
b) 源码工具通过将packages目录改动到Components目录下来解决DevExpress.ExpressApp.Spa项目中引用的Microsoft.AspNetCore.Server.Kestrel.Transport.Abstractions.2.1.0这个包文件路径长度超过了系统限制的最大路径长度260个字符的问题,关于长路径的说明,请参见:https://docs.microsoft.com/zh-cn/nuget/tools/cli-ref-long-path
c) 源码工具会自动检测当前机器是否安装Visual Studio企业版来自动确认是否要编译Sources目录中的DevExpress.CodedUIExtensionPackage目录中的项目。这些项目编译之后会为企业版增加UI单元测试的功能,请参见安装目录中的Components\Tools\Windows Forms\CodedUIExtension.chm来得到更详细的说明。