部署发布相关问题
现象
使用开发系统的安装构件功能,安装二次开发资源构件后,出现一直停留在如下图页面:
问题原因
该资源构件依赖了其他资源构件,下载其他资源构件卡顿造成。
解决方案
方案1:
手动安装,步骤如下:
- 打开cmd
- 输入命令:cd /d 开发系统目录/Template
- 输入命令:npm run v3:install 开发系统目录/ V3DevDownload/资源构件名称.jar
- 输入命令:npm run v3:start
- 查看nodejs服务是否能启动成功,如果不能,根据异常信息在本文档中查找对应解决方案。
方案2:
手动安装,步骤如下:
- 打开cmd
- 输入命令:cd /d 开发系统目录/Template
- 输入命令:npm run v3:install 资源构件编号
- 根据控制台指引,完成安装。
- 输入命令:npm run v3:start
- 查看nodejs服务是否能启动成功,如果不能,根据异常信息在本文档中查找对应解决方案。
部署进度到 5% 后,一直卡住,无响应。
问题原因
自定义窗体 nodejs 环境打包出错,未捕捉到异常导致。
解决方案
- 取消构件部署。如无法取消,可以去任务管理器里结束进程 node.exe
- 打开cmd
- 输入命令:cd /d 开发系统目录/Template
- 输入命令:npm run v3:package 业务构件目录/dev nopreview
查看命令控制台输出,根据异常信息在本文档中查找对应解决方案。
注:请将异常信息反馈给平台,方便平台捕捉各种异常情况,进行对应处理。建议
因开发人员使用编写代码方式开发自定义窗体,可能出现各种异常场景平台无法捕捉到,建议将平台未捕捉到的异常场景反馈给平台,共同完善自定义窗体开发模式。
解决方案
用文本编辑器打开报错的文件,删除冲突代码就可以了。
例如:找到提示信息里的这个窗体文件component.methods,处理一下里面的冲突,在第1行,位置7。是在正确的窗体文件中,多了第一行,删除即可。
部署报错:表字段supply_controller_material_flag长度不能大于30
解决方案:
oracle数据库的规定,字段名字的长度不能超过30,您这个字段名称,太长了。
开发系统:
选择「构件」右键,部署到本地。
会生成一个 zip 部署文件。
部署:
把 zip 部署文件拷贝到服务器,在服务器上浏览器访问 http://IP:port/test/mockPublish.html。
选择文件,提交即可。
问题描述:部署的时候,提示:数据库的事务日志已满
解决方案:
打开企业管理器,右键要压缩的数据库,选择 “任务-收缩-文件” 。
收缩操作,选择 “将文件收缩到xxMB” ,这里会给出一个允许收缩到的最小MB数,直接输入这个数,确定就可以了。
原因:
- 数据库表里,已有数据。
- 平台里字段长度,比表里字段长度小。
- 部署时,会把平台里新的字段长度,在表里重新生成。
- 当把表原来数据导回时,数据长度超过了字段长度。
解决方案:
- 你自己查一下平台里表字段长度,和数据库里的字段长度,是否一致。
- 如果表数据没用,直接删除掉表的数据再部署也行。
问题描述:
构件部署到本地正常,部署到服务器是提示构件内部版本太低。怎么解决?
解决方案:
V平台分 “开发系统” 和 “执行系统” 2部分组成。
- 开发系统:安装在本地,在开发期使用,用于配置构件。
- 执行系统:安装在服务器,启动服务,用于生产环境。开发系统配置完成的构件发布到执行系统,即可运行,可以理解成web服务。
当2个系统的版本不匹配的时候,部署就会出现此问题。
很好理解,例如,高版本构件因为需要加多了一个参数,但是低版本里就没有,那么部署的时候,肯定就会出问题。
注:高版本的开发系统,可以打开低版本开发系统配置的构件,低版本的开发系统,不可以打开高版本开发系统配置的构件,即向下兼容。建议:做项目的时候,一定要保留项目正式环境执行系统对应的开发系统在本地,做过几个项目,就保留几个开发系统,万无一失。
问题描述:
零代码开发V平台部署构件时,发现没权限怎么办?
原因:
这是因为在控制台中,开启了 “是否验证开发系统的发布权限” 。
解决方案:
登录配置中心,设置路径:配置中心 → 系统高级配置 → 系统维护 → 配置管理
设置 “
com.toone.v3.platform-10cache
” 的参数:
sCheckPublishPermission(是否验证开发平台的发布权限)
项设置false
,保存重启服务。
false
:不验证,所有账号能发布;true
:验证,只有用启动执行系统的账号登录的开发平台才能发布。
问题描述:
零代码开发V平台部署构件或网页中F12有报错:Request Entity Too Large 。
此服务通过 nginx 转发,请求大小受限,需修改 nginx 配置。
nginx 默认是1M,需要增大的话,在 nginx.conf 中 http{} 增加一句:
lient_max_body_size 100M
;重启 nginx 即可。
问题描述:
部署构件报错,提示部署标识为「XXX」的表失败,该编码「XXX」已经存为另一个标识「XXX」,请修改表编码或表标识再部署?
原因:
- 在开发系统删除掉某张表后,新建或复制粘贴了一个同编码的表。
- 在开发系统手动修改过表的表标识。
解决方案:
按照提示,手动修改表标识或表编码后重新部署。
零代码开发V平台只能执行无返回值的存储过程。
- 存储过程命名要求,加前缀:VSQLPROC_,例如 VSQLPROC_test。
- 新建一个查询,里面写 call VSQLPROC_test(:abc)。
- 使用服务端方法,规则【执行无返回值的查询】。