咨询从Git源码构建DotNetNuke安装包的正确方法
解决DNN源码构建与夜间包不一致的问题
我来帮你理清这个问题——你直接运行Build_Install_Package.bat构建出来的包和官方夜间构建包不一样,大概率是因为没对齐源码分支、构建参数或环境配置。下面是获取和官方夜间构建一致产物的正确步骤:
1. 确保拉取对应分支的源码
官方夜间构建通常基于活跃开发分支(2018年DNN的主开发分支为develop)的最新提交,而非默认的master分支。你需要切换并同步到对应分支:
git checkout develop git pull
2. 使用匹配官方的构建参数
直接运行脚本会使用默认配置,和官方夜间构建的参数可能存在差异。你需要添加指定参数来对齐,比如指定发布模式、对应版本号:
Build_Install_Package.bat -Configuration Release -Version <夜间包对应的版本号>
可以查看项目根目录的构建说明文档,确认官方夜间构建使用的具体参数。
3. 对齐本地构建环境
2018年的DNN版本对依赖环境有特定要求,比如.NET Framework版本、MSBuild版本等。官方夜间构建的环境(如当时常用的.NET Framework 4.6.x、MSBuild 15.0)需要和你的本地环境一致,否则会导致编译产物出现差异。
4. 验证差异点定位问题
你可以对比两者的文件结构、核心DLL版本或web.config中的版本信息,明确差异具体在哪里:
- 如果是文件缺失,可能是构建脚本未包含官方打包的全部资源;
- 如果是代码逻辑差异,那基本是源码分支未同步到位。
总结来说,直接运行Build_Install_Package.bat不是完全正确的方式,需要先对齐源码分支、构建参数和环境配置,才能得到和官方夜间构建一致的安装包。
内容的提问来源于stack exchange,提问作者Jernej Pirc
相关产品推荐
相关产品推荐

