U9二次开发之补丁制作
补丁制作
u9二开完成之后就要制作补丁发布到服务器啦,我把补丁制作的流程记录一下,供你参考。
1、还原制作补丁所需要的数据库
将补丁库.bak,还原到数据库中。
2、配置environment.xml文件
还原数据库之后,然后配置BuildTool目录下的environment.xml文件。
修改数据库连接信息,指向刚才还原的数据库U9Build25_YX_DEV。
只需要改数据库连接信息就行了,其他参数不用改。
<?xml version="1.0" encoding="utf-8" ?>
<environment> <system> <connectionString>packet size=4096;user id=sa;Connection Timeout=150;Max Pool size=1500;data source=localhost;persist security info=True;initial catalog=U9Build25_YX_DEV;password=123456</connectionString></system> <view><mapper type="UFSoft.UBF.View.Query.MetadataDomainMapping, UFSoft.UBF.Business.Adapter" /><creator type="UFSoft.UBF.View.Query.Adapter.TranslatorCreator, UFSoft.UBF.Business.Adapter" /></view><Path><Metadatalib>d:\</Metadatalib></Path><path><ubfbin>d:\ubf2.0\bin</ubfbin><ubfstudio>d:\ubf20\visual studio</ubfstudio><ubfresources>d:\ubf20\resources</ubfresources><approot>d:\u9app</approot></path>
</environment>
3.配置desktopBuild.xml 文件
同样在BuildTool文件夹下找到desktopBuild.xml 文件。
version:u9的版本号,我这里是6.0
ProductPath:U9 Portal 文件夹所在的目录,也就是u9的安装目录
ProjectPath:补丁生成文件放置的目录
Module:补丁的模块名,可以自定义,一般以Cust开头
其他参数不需要改。
<?xml version="1.0"?>
<configuration version="6.0"><!--U9,HR,CD,TR !--><Domain>CD</Domain><PatchBaseVersion>0</PatchBaseVersion><ProductPath>D:\yonyou\U9V60</ProductPath><ProjectPath>D:\yonyou\U9Project\MKGD\补丁</ProjectPath><FilePath>D:\</FilePath><!--重新构造时是否清空文件夹Y,N--><DelOnRebuild>Y</DelOnRebuild><CustomerNo>TO_BE_Cust</CustomerNo><IsCustomer>1</IsCustomer><Module>Cust_CompanyName</Module><SpNumber>0</SpNumber><IsSP>0</IsSP>
</configuration>
4.新建方案
打开 UFIDA.UBF.Build.Engine.DesktopBuild.exe 程序,点击新建方案按钮,新建一个方案。
然后点击构造按钮:
构造完成后,会在ProjectPath指定的目录下生成很多文件夹:
各个文件夹的说明如下:
- AssemblyInfo:放置Setup.bdxml,此文件是各个模块装配文件的集合
- Files: 放置所有需要拷贝的文件,包括所有BE/BP/UI/SV的dll,UI/BE插件的配置文件,所有需要拷贝到服务器Portal下的文件
- Metadata: 模型构造生成的文件,放置与原数据脚本一起生成的bulk文件,BE/BP/UI/SV生成的所有bulk文件(默认是生成在UBF下的,默认路径:D:\yonyou\UBFV50\U9.VOB.Product.Other)
- PostSQL:所有需要执行的脚本
- PreScript:是预置脚本的集合,即需要在补丁刚开始部署到服务器上时需要优先执行的脚本
- ReportMD:放置报表模型和打印模型,所有xml混合放在一起,不要建立子文件夹存放不同模型 (构造生成的建表脚本不需要放入补丁包中,否则会清除掉数据库表原有数据)
5.复制文件
我做的是BE插件,只需要把BE插件项目编译好的dll、pdb文件和sub.xml文件复制到Files文件夹下就行了:
6.生成安装信息
点击生成安装信息按钮:
操作成功后会在对应目录下生成packageinfo.xml文件。
打开xml文件修改一下说明信息。
不知什么原因,我生成的packageinfo.xml文件中dir是空的(难道是配置问题?),我手动添加了下dir路径:
dll和pdb文件是放在\Portal\ApplicationLib路径下的,
sub.xml文件是放在\Portal\bin路径下的。
<?xml version="1.0" encoding="UTF-8"?>
<package><baseinfo code="CD6.0.Cust_Canaan.1002208310000003" name="CD6.0.Cust_Canaan.1002208310000003" type="" version="6.0" releasedate="" desc="" question="" doc="" basebuild="" referenceBuild="20090918002" IsCustomer="1" CustomerNo="TO_BE_Cust" Domain="CD" SPNum="0" Modules="Cust_Canaan," DependModules="," IsSP="0" /><description>说明</description><descriptiondetail>标准采购插件提交审核时写中间表</descriptiondetail><filelist><file dir="\Portal\ApplicationLib;" exeflag="" servertype="0" filename="UFIDA.U9.Cust.Canaan.PurchaseOrderPlugBE.dll" filetype="0" /><file dir="\Portal\ApplicationLib;" exeflag="" servertype="0" filename="UFIDA.U9.Cust.Canaan.PurchaseOrderPlugBE.pdb" filetype="0" /><file dir="\Portal\bin;" exeflag="" servertype="0" filename="UFIDA.U9.Cust.Canaan.PurchaseOrderPlugBE.sub.xml" filetype="0" /></filelist>
</package>
7.生成补丁
点击生成补丁按钮生成补丁。
8.安装补丁
打开系统管理工具客户端,点击补丁下载与安装侧边栏,然后点击导入,添加自己的补丁。
添加完后点提交按钮:
然后选中你添加的补丁,安装就行了:
最后
配置文件只需要配置一次,以后直接使用就可以了,其实打补丁本质上就是把各种dll、xml文件复制到服务器不同的文件夹之下而已,我们完全可以自己手动复制,不需要打补丁。
不过打补丁的好处是,可以记录历史的补丁数据,什么时候更新了什么东西,一目了然。
如果全是手工复制文件到服务器目录的话,时间久了就会搞不清楚以前更新了什么内容,不利于系统维护。
所以,我还是建议通过打补丁的方式更新系统。
U9二次开发之补丁制作相关推荐
- ABAQUS 二次开发 简单插件制作
本文主要使用python开发,为了让大家简单认识这个过程,通过介绍一个较为简单的插件制作过程,希望大家能对二次开发简单过程有个了解,当然我也是刚刚接触这个,很多地方还在摸索,只是记录这个过程,希望对后 ...
- U9二次开发之BP定时任务插件开发
采购订单BP定时任务插件开发 最近我们公司要做采购订单审批和OA的集成,也就是把u9的审批流程搬到OA里去做.当业务员点击标准采购提交按钮的时候,把采购订单的信息触发到OA流程,在OA里做审核,OA审 ...
- 网站二次开发如何防止别人打包源码_企业网站制作前需注意的几个事项
随着互联网的普及,企业网站已经成为了企业营销推广的基础,更是品牌建设中不可或缺的部分,但是网站也不能随便做.做网站之前需要注意下面几个事项,如果没有处理好,没有实施到位,那即使网站制作好后,也起不到应 ...
- 使用NSIS制作多版本Revit插件(Revit二次开发)
因为VisualStudio中微软官方的程序打包工具,无法实现Revit多版本插件的制作,所以我选择了NSIS来制作多版本插件. 一.使用NSIS向导创建脚本 1.1.打开NSIS的VNISEdit( ...
- Revit 二次开发之安装包的制作
做了一段时间的Revit二次开发了,也做了好几个插件,最终都不得不面临一个问题,交付客户使用,那么问题来了,客户端那边如何部署呢,最简单的方法就是让客户找到Revit插件加载目录,将我们制作的插件dl ...
- PowerMIL二次开发外挂制作视频教程-易语言编程15.7小时
PM 二次开发外挂制作视频教程-易语言编程15.7小时 链接:https://pan.baidu.com/s/1DBNvygOVPnTEzPkopFAwqg 提取码:dx62
- Lua快速入门篇(XLua教程)(Yanlz+热更新+xLua+配置+热补丁+第三方库+API+二次开发+常见问题+示例参考)
<Lua热更新> ##<Lua热更新>发布说明: ++++"Lua热更新"开始了,立钻哥哥终于开始此部分的探 ...
- 韩顺平主讲织梦dedecms 5.7二次开发实战仿站模板制作视频教程
个人看后感觉 最好的 dedecms 5.7二次开发视频教程 由于原文件太大,上传到cdsn不方便,就传到网盘了 下载地址 传智播客 PHP教程 韩顺平 dedecms 项目开发笔记.rar 下载地 ...
- redash二次开发和制作镜像
简介: 上一篇文章,我们简单的测试了一下服务器环境和docker基础镜像.并没有涉及我们自己编写的flask python程序. 现在,我们就要把我们自己的flask程序,放进docker镜像. 但是 ...
最新文章
- 第 138 章 Spark
- (运维)VMware-vCenter-Server-Appliance-5.0安装与部署
- win7系统Myeclipse下切换SVN用户
- centos6.5编译安装php7
- 让FX1.1的NotifyIcon支持BalloonTip(2)
- 高并发编程基础(java.util.concurrent包常见类基础)
- 深入Spring Boot:利用Arthas排查NoSuchMethodError
- k8s学习(一)——kubectl与api-server之间的交互核心过程
- nrm : 无法加载文件 E:\node\node_global\nrm.ps1,因为在此系统上禁止运行脚本
- 单点登录有关跨域的点
- FastAPI用户安全性解决方案
- 表格如何调出好看的样式?
- pdf转jpg的在线与用转换器的转换方法
- 3d打印英语文献_3D打印NiTi形状记忆合金管的扭转性能研究
- 野火指南者开发板移植 lvgl 库
- 爬虫---数据的提取
- html5流媒体多浏览器,PearPlayer流媒体播放器 v2.5.6(开源HTML5流媒体播放框架)
- mtk android 关机充电,MTK充电开机关机过程
- 学期博客:学习进度条
- 在祝贺提拔的饭局上当众敬酒,别说“感谢领导”,高手都懂这4点