Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >U9二次开发之补丁制作

U9二次开发之补丁制作

作者头像
zhanyd
发布于 2022-12-05 07:18:42
发布于 2022-12-05 07:18:42
62800
代码可运行
举报
文章被收录于专栏:编程我也会编程我也会
运行总次数:0
代码可运行

补丁制作

u9二开完成之后就要制作补丁发布到服务器啦,我把补丁制作的流程记录一下,供你参考。

1、还原制作补丁所需要的数据库

将补丁库.bak,还原到数据库中。

2、配置environment.xml文件

还原数据库之后,然后配置BuildTool目录下的environment.xml文件。

修改数据库连接信息,指向刚才还原的数据库U9Build25_YX_DEV。

只需要改数据库连接信息就行了,其他参数不用改。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?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开头

其他参数不需要改。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?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路径下的。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?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文件复制到服务器不同的文件夹之下而已,我们完全可以自己手动复制,不需要打补丁。

不过打补丁的好处是,可以记录历史的补丁数据,什么时候更新了什么东西,一目了然。

如果全是手工复制文件到服务器目录的话,时间久了就会搞不清楚以前更新了什么内容,不利于系统维护。

所以,我还是建议通过打补丁的方式更新系统。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-09-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 编程我也会 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
U9二次开发之BE插件开发
当业务员点击标准采购提交按钮的时候,把采购订单的信息触发到OA流程,在OA里做审核,OA审核完成之后,再把审核结果回写到U9。
zhanyd
2022/12/05
1.1K0
U9二次开发之BE插件开发
U9二次开发之BP定时任务插件开发
当业务员点击标准采购提交按钮的时候,把采购订单的信息触发到OA流程,在OA里做审核,OA审核完成之后,再把审核结果回写到U9。
zhanyd
2022/12/05
8420
U9二次开发之BP定时任务插件开发
用beego进行onlyoffice document server的二次开发
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hotqin888/article/details/79293263
hotqin888
2018/09/11
1.7K0
Labelimg制作数据集「建议收藏」
下载地址:https://github.com/tzutalin/labelImg
全栈程序员站长
2022/07/05
8330
Labelimg制作数据集「建议收藏」
CobaltStrike二次开发
首先我们将IEDA中的java-decompiler.jar拿出来,一般在/plugins/java-decompiler.jar/lib/里面。然后新建两个文件夹来存放我们反编译的文件。其中cs_bin里面存放未反编译的文件。
鸿鹄实验室
2021/04/01
2.7K0
CobaltStrike二次开发
Revit二次开发——安装包的制作方法
今天给大家分享安装包的制作,相信各位做了一段时间的二次开发,都想把插件分享给他人使用,以往我们的方法是将dll及addin文件拷贝到c盘里。这样有些麻烦,也不易于插件的升级维护。我们使用安装包的方法可以实现插件的安装和卸载,提升用户体验感。今天小编讲解如何制作安装包: 1.点击Visual studio工具栏里的扩展更新,点联机,搜索installer,下载安装installer projects 工具。
一席青衣卧龙城
2022/04/21
1.3K0
Revit二次开发——安装包的制作方法
PDMS二次开发(五)——小试牛刀之细节整理和收尾
这是小试牛刀系列最后一集。前几集我们了解了PDMS采用Addin方式做二次开发的技术架构和最基本的开发方法,也实现了很多基本的功能效果。这几集的学习,我觉得算是管中窥豹吧,离真正的入门还有一些的距离。小试牛刀作为一个入门级的学习笔记系列,基本涵盖了最初级的开发内容,也因为下半年事情特别多,暂时没有时间继续深入研究,所以小试牛刀系列就到此为止了,等忙完这一阵子会继续与大家一起研究和分享,小工具下载和安装说明见最后。
天堂向左
2022/04/26
1.6K0
PDMS二次开发(五)——小试牛刀之细节整理和收尾
Jeecms入门安装与二次开发
参考资料 https://www.cnblogs.com/Jeely/p/11224267.html https://blog.csdn.net/wah1870714/article/details/86519590
全栈工程师修炼指南
2022/09/29
1.1K0
Jeecms入门安装与二次开发
MyBatisPlus 代码生成工具
CodeGenerator.java package com.pf.util; import com.baomidou.mybatisplus.annotation.DbType; import com.baomidou.mybatisplus.core.toolkit.StringPool; import com.baomidou.mybatisplus.generator.AutoGenerator; import com.baomidou.mybatisplus.generator.Injecti
京剧猫
2023/03/06
4520
revit二次开发教程_BIM二次开发
1) 第一步,利用vs2010建立c# Windows服务类型的项目。
全栈程序员站长
2022/09/19
1.8K0
revit二次开发教程_BIM二次开发
Wannacry分析
  通过CSP获取RSA_AES提供者句柄,导入RSA 私钥句柄,这是用于解密dll
全栈程序员站长
2022/09/07
6870
Wannacry分析
JMeter二次开发插件实例
6) protocol—包含了JMeter支持的不同协议(ftp http、tcp—socket协议,没有webservice)
周辰晨
2020/07/24
1.5K1
JMeter二次开发插件实例
OpenDaylight Carbon二次开发实用指南
通过本文你将知道: Maven Archetype的基本原理以及如何使用Maven Archetype生成适用于不同版本的ODL子项目。 本文将着重讲解cli命令开发,以及Carbon Release中新引入的Blueprint的一些基本知识。OpenDaylight Carbon Release中模块运行的大致流程以及对于api和impl的开发可以参考ODL碳版本模块开发及流程梳理还有ODL controller官方开发指南(它对DataStore的描述相当不错)。 如何将编写好的应用添加到一个正在运行的
SDNLAB
2018/03/29
1.4K0
OpenDaylight Carbon二次开发实用指南
discuz 二次开发[通俗易懂]
转载地址:http://www.cnblogs.com/LY-leo/p/5843439.html
全栈程序员站长
2022/08/31
1.9K0
使用Qt installer framework制作安装包
一、介绍     使用Qt库开发的应用程序,一般有两种发布方式: (1)静态编译发布。这种方式使得程序在编译的时候会将Qt核心库全部编译到一个可执行文件中。其优势是简单单一,所有的依赖库都集中在一起,其缺点也很明显,可执行程序体量较大,光Qt核心库加起来就得十多兆。 (2)制作安装包发布。这种方式的原理也简单,就是将可执行程序和其依赖的库文件一起打包压缩,制作成安装包发布。制作安装包的工具挺多,今天要说的是Qt官方的安装包制作框架Qt installer framework.这个框架由Qt官方出品,广泛应用
24K纯开源
2018/01/18
2.8K0
使用Qt installer framework制作安装包
Tinker源码分析(二):加载补丁
加载的流程主要在 tryLoadPatchFilesInternal 里面。tryLoadPatchFilesInternal 方法很长,我们需要分段来看。
俞其荣
2019/03/15
1.6K0
教你用Android做二次开发,识别率达到科大讯飞语音输入水平 | 原力计划
随着目前用户需求的精细化和智能化,很多时候我们需要在App内集成语音输入模块,为用户提供语音输入的功能。而科大讯飞语音作为行业内翘楚,识别结果相对准确,且讯飞自带一套识别动画,适合快速搭建模块,废话不多说,先看下效果图。
AI科技大本营
2020/03/24
9970
教你用Android做二次开发,识别率达到科大讯飞语音输入水平 | 原力计划
python判断文件后缀_Python 判断文件后缀是否被篡改
“255044462D312E”: [“Adobe Acrobat”, [“.pdf”]],
全栈程序员站长
2022/11/04
2.5K0
dotnet 6 使用 Obfuscar 进行代码混淆
本文来安利大家 Obfuscar 这个好用的基于 MIT 协议开源的混淆工具。这是一个非常老牌的混淆工具,从 2014 年就对外分发,如今已有累计 495.5K 的 nuget 下载量。而且此工具也在不断持续迭代更新,完全支持 dotnet 6 版本,对 WPF 和 WinForms 等等的支持也是非常好,支持多个不同混淆方式和等级的配置,支持混淆之后生成符号文件。本文将来告诉大家如何使用此混淆工具,以及此工具能达成的效果和此工具混淆的原理
林德熙
2022/08/12
2.3K0
dotnet 6 使用 Obfuscar 进行代码混淆
[工作随笔]JumpServer排坑安装及二次开发
koko是用来连接Linux服务器的跳板机,原来用python写的,现在用go重写的
DriverZeng
2022/10/31
1.4K0
相关推荐
U9二次开发之BE插件开发
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验