smartKettle离线部署及问题记录

目录

  • 📚第一章 前言
    • 📗背景
    • 📗目的
    • 📗总体方向
  • 📚第二章 部署
    • 📗源码下载
    • 📗后端部署
      • 📕导入后端项目
      • 📕修改settings.xml(自动下载相关jar包)
      • 📕 编译
      • 📕 修改配置文件application.yml
      • 📕 初始化数据库
      • 📕 打包上传启动
      • 📕 可以正常访问接口界面,即服务启动成功
    • 📗前端部署
      • 📕基础环境按照
      • 📕编译
      • 📕本地启动
      • 📕服务器部署验证
        • 📘 nginx配置
        • 📘 登录
  • ⁉️问题记录
    • ❓问题一: jar包下载不下来
      • ❗解决方式一:正常不会有问题,建议直接使用项目中提供的settings.xml替换,修改地址即可
      • ❕解决方式二:手动下载,费劲呢!!!!
        • 📘修改jar包名称
        • 📘逐一上传到本地仓库
      • ❗解决方式三:已打包上传CSDN,免费下载
      • ❕解决方式二:
    • ❓问题二:启动报错(系统默认mysql5,使用8时忘了更新驱动包)
      • ❗解决方式:替换msyql8驱动
        • 先本地验证

📚第一章 前言

📗背景

昨天下载了Kettle9.2的源码,简单了解了下代码结构,今天来看下smartKettle,它相当于之前部署的pentaho-server-ce-9.4.0.0-343,是一款超轻量级的kettle web端调度监控平台,详见官网
在这里插入图片描述

📗目的

我的最终目的和smartKettle的终极目标是一致的,实现Web端的Kettle任务流程编排,今天部署smartKettle也是寻求一些启发点
在这里插入图片描述

📗总体方向

干就完了

📚第二章 部署

📗源码下载

下载地址:https://gitee.com/hundage/smartkettle.git
在这里插入图片描述

📗后端部署

📕导入后端项目

在这里插入图片描述

📕修改settings.xml(自动下载相关jar包)

在这里插入图片描述
settings.xml内容如下(别忘了修改本地仓库存放路径):

<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"><localRepository>D:\soft\apache-maven-3.8.5\apache-maven-3.8.5\repository</localRepository><servers><server><id>rdc-releases</id><username>Y3z0VZ</username><password>Bb8byTSlq0</password></server><server><id>rdc-snapshots</id><username>Y3z0VZ</username><password>Bb8byTSlq0</password></server></servers><mirrors><mirror><id>nexus-aliyun</id><mirrorOf>central</mirrorOf><name>nexus-aliyun</name><url>https://maven.aliyun.com/nexus/content/groups/public</url></mirror></mirrors><profiles><profile><id>first-repository</id><repositories><repository><id>rdc-snapshots</id><url>https://repo.rdc.aliyun.com/repository/128991-snapshot-NY2Ub0/</url><releases><enabled>true</enabled><updatePolicy>always</updatePolicy></releases><snapshots><enabled>true</enabled><updatePolicy>always</updatePolicy></snapshots></repository></repositories></profile><profile><id>second-repository</id><repositories><repository><id>rdc-releases</id><url>https://repo.rdc.aliyun.com/repository/128991-release-EJH8o1/</url><releases><enabled>true</enabled><updatePolicy>always</updatePolicy></releases><snapshots><enabled>true</enabled><updatePolicy>always</updatePolicy></snapshots></repository></repositories></profile><profile><id>third-repository</id><repositories><repository><id>central</id><url>https://maven.aliyun.com/nexus/content/groups/public</url><releases><enabled>true</enabled></releases><snapshots><enabled>true</enabled></snapshots></repository></repositories></profile><profile><id>forth-repository</id><repositories><repository><id>snapshots</id><url>https://maven.aliyun.com/repository/central</url><releases><enabled>true</enabled></releases><snapshots><enabled>true</enabled></snapshots></repository></repositories></profile><profile><id>fifth-repository</id><repositories><repository><id>pentaho-kettle</id><name>pentaho-kettle仓库</name><url>https://repo.orl.eng.hitachivantara.com/artifactory/pnt-mvn/</url></repository></repositories></profile></profiles><activeProfiles><activeProfile>first-repository</activeProfile><activeProfile>second-repository</activeProfile><activeProfile>third-repository</activeProfile><activeProfile>forth-repository</activeProfile><activeProfile>fifth-repository</activeProfile></activeProfiles>
</settings>

📕 编译

想放弃了,什么玩意…
在这里插入图片描述
全量导入项目,不要只导入后端程序
在这里插入图片描述
在这里插入图片描述

📕 修改配置文件application.yml

主要配置数据库信息和日志路径(如果不想修改文件,可以配置环境变量,对应配置文件中XTL_XXXX,不管那种方式都要麻烦一遍的
在这里插入图片描述
JDBC连接参考如下(注意serverTimezoneallowPublicKeyRetrieval,这里使用的mysql8,若是5请忽略):

jdbc:mysql://xxx:3306/xtl_db?useUniCode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&

📕 初始化数据库

在这里插入图片描述
在这里插入图片描述

📕 打包上传启动

在这里插入图片描述

指定后台运行服务:nohup java -jar smart-kettle-1.0.0-SNAPSHOT.jar /dev/null 2>&1 &

📕 可以正常访问接口界面,即服务启动成功

Swagger地址:http://xxxx:9753/xtl-server/swagger-ui.html
在这里插入图片描述

📗前端部署

📕基础环境按照

之前安装过,就不赘述了,就是下载一个nodejs,配置下环境变量,可参照Vue项目创建(2.x/3.x 自动/手动)及问题记录

📕编译

  • 这里使用的VSCode软件,导入前端项目,执行npm install
    在这里插入图片描述
  • 打包:npm run build
    在这里插入图片描述
    在这里插入图片描述

📕本地启动

  • 配置服务器地址
    在这里插入图片描述
  • 执行启动:npm run dev
    在这里插入图片描述
  • 成功登录
    在这里插入图片描述
    在这里插入图片描述

📕服务器部署验证

  • 编译好的文件在dist目录,直接压缩,上传到服务器,通过Nginx部署
    在这里插入图片描述
📘 nginx配置

nginx安装可参照安装nginx两种方式及遇到问题
在这里插入图片描述

server {listen       8642;server_name  localhost;location / {root /home/opensource/app/smartketlle/ui/dist;try_files $uri $uri/ /index.html;index  index.html index.htm;}location /kettle-admin {alias /home/opensource/app/smartketlle/ui/dist;index  index.html index.htm;try_files $uri $uri/ /kettle-admin/index.html;     #4.重定向,内部文件的指向}location /xtl-server/ {proxy_pass http://localhost:9753/xtl-server/;proxy_set_header Host $host:$server_port;proxy_set_header X-Real-IP $remote_addr;proxy_set_header REMOTE-HOST $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}
}
📘 登录

在这里插入图片描述
在这里插入图片描述

⁉️问题记录

❓问题一: jar包下载不下来

在这里插入图片描述
在这里插入图片描述

❗解决方式一:正常不会有问题,建议直接使用项目中提供的settings.xml替换,修改地址即可

在这里插入图片描述

❕解决方式二:手动下载,费劲呢!!!!

官方文档有说明,下载不下来情况下如何处理
在这里插入图片描述
在这里插入图片描述

📘修改jar包名称

在这里插入图片描述

📘逐一上传到本地仓库
mvn install:install-file -Dfile=D:/code/opensource/smartkettle/x-smart-kettle-server/external/x-kettle-core-1.0.0-SNAPSHOT.jar -DgroupId=org.yaukie.xtl -DartifactId=x-kettle-core  -Dversion=1.0.0-SNAPSHOT -Dpackaging=jar 
mvn install:install-file -Dfile=D:/code/opensource/smartkettle/x-smart-kettle-server/external/x-common-base-1.0.0-SNAPSHOT.jar -DgroupId=org.yaukie.core -DartifactId=x-common-base  -Dversion=1.0.0-SNAPSHOT -Dpackaging=jar
mvn install:install-file -Dfile=D:/code/opensource/smartkettle/x-smart-kettle-server/external/x-common-auth-1.0.0-SNAPSHOT.jar -DgroupId=org.yaukie.core -DartifactId=x-common-auth  -Dversion=1.0.0-SNAPSHOT -Dpackaging=jar
mvn install:install-file -Dfile=D:/code/opensource/smartkettle/x-smart-kettle-server/external/x1-simple-job-1.0.0-SNAPSHOT.jar -DgroupId=org.yaukie.frame -DartifactId=x1-simple-job  -Dversion=1.0.0-SNAPSHOT -Dpackaging=jar 

在这里插入图片描述
在这里插入图片描述

❗解决方式三:已打包上传CSDN,免费下载

在这里插入图片描述

下载地址
在这里插入图片描述

❕解决方式二:

❓问题二:启动报错(系统默认mysql5,使用8时忘了更新驱动包)

在这里插入图片描述

❗解决方式:替换msyql8驱动

在这里插入图片描述

<!-- 定义 mysql 版本 --><dependency><groupId>org.yaukie.core</groupId><artifactId>x-common-base</artifactId><version>1.0.0-SNAPSHOT</version><exclusions><exclusion><!--排查掉自带的msyql5 --><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></exclusion></exclusions></dependency><!--重新指定mysql8驱动 --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.25</version></dependency>
先本地验证

在这里插入图片描述

java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowedat com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:110)at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:833)at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:453)at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:246)

修改配置allowPublicKeyRetrieval=true,再次启动
在这里插入图片描述

启动成功;http://localhost:9753/xtl-server/swagger-ui.html
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/218715.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

高精度电压源的作用是什么

高精度电压源是一种用于提供稳定和精确电压输出的电子设备。它们在实验室研究、工业生产和医疗器械等各种应用中发挥着重要作用。下面西安安泰来为大家详细介绍高精度电压源的作用和用途等内容。 一、高精度电压源的作用 提供准确的电压值&#xff1a;高精度电压源可以提供非常…

直流电、交流电、电磁波、光之间的联系

直流电、恒定磁场、交流电、交变磁场、电磁波、光之间的联系 频率为0Hz的直流电及恒定磁场 从频率的角度上看&#xff0c;直流电与恒定磁场的方向不变&#xff0c;频率为0Hz. 如可充电锂离子电池的电压3.7V, 干电池的电压1.5V. 磁铁的磁场方向从N极到S极&#xff0c;始终保持…

AnimateAnything:Fine-grained open domain image animation with motion guidance

1.Introduction 本文旨在借助视频扩散模型的motion prior来解决开放领域图像动画问题&#xff0c;提出了一种可控扩散图像动画方法&#xff0c;能够在保留细节的同时对图像中的任意对象进行动画处理。为了增强用户对动画过程的控制能力&#xff0c;引入了motion area guidance和…

vue3 添加编辑页使用 cron 表达式生成

示例效果图 1、添加组件 <template><div class"v3c"><ul class"v3c-tab"><li class"v3c-tab-item" :class"{ v3c-active: tabActive 1 }" click"onHandleTab(1)">秒</li><li class&qu…

小航助学2023年9月电子学会Scratch三级真题(含题库答题软件账号)

需要在线模拟训练的题库账号请点击 小航助学编程在线模拟试卷系统&#xff08;含题库答题软件账号&#xff09; 单选题2.00分 删除编辑附件图文 答案:C 第1题运行下面程序后&#xff0c;角色的x坐标值是&#xff1f;&#xff08; &#xff09; A、100B、90C、110D、120 答…

【前端学习记录】记一次分片上传逻辑的调试过程

前言 在项目开发的过程中&#xff0c;经常会遇到上传和下载&#xff0c;对于上传来说&#xff0c;如果是小文件的话&#xff0c;接口响应会比较快&#xff0c;但是对于大文件&#xff0c;则需要对其分片以减少请求体的大小和上传时间。 小文件上传 以Vue框架使用<el-uplo…

官宣 鸿雁成为2023汇丰世界羽联世界巡回赛总决赛官方供应商

全屋智能和羽毛球运动能擦出怎样的火花&#xff1f; 鸿雁给你答案&#xff01; 12月13日&#xff0c;2023汇丰世界羽联世界巡回赛总决赛将在杭州举行。 鸿雁签约成为2023汇丰世界羽联世界巡回赛总决赛官方供应商&#xff0c;将携手世界羽联&#xff0c;为广大羽毛球爱好者们…

Yolov5双目测距-双目相机计数及测距教程(附代码)

引言 在计算机视觉领域&#xff0c;Yolov5-Binocular相机距离计数及测距是一个引人注目的研究方向。本教程将为小白用户提供一个简明扼要的学习指南&#xff0c;涵盖了关键步骤&#xff0c;包括标定、公示推倒以及重要的代码片段。 第一步&#xff1a;环境搭建 首先&#x…

【Geoserver】将geoserver迁移到jetty的发行包中

之前讲了在Geosever的二进制发行包中升级jetty的内容&#xff0c;我测试之后发现有些问题&#xff0c;本地运行可能没有问题&#xff0c;但是在linux上运行报错了。 于是我想着换个思路好了&#xff0c;总是想着将Geosever中的jetty包替换掉&#xff0c;干脆反过来&#xff0c;…

2023_Spark_实验二十六:编写Shell模拟生成点击实时数据

引言&#xff1a;流式数据处理主要处理实时数据&#xff0c;由于实验教学过程中&#xff0c;每个同学无法拿到实时数据&#xff0c;因此我们开发shell脚本模拟实时数据生成&#xff0c;支持后续实验。 实验目的&#xff1a;通过开发模拟实时点击流shell脚本&#xff0c;模拟实时…

【Database】什么是数据库?常见的数据库类型有哪些?

什么是数据库&#xff1f;常见的数据库类型有哪些&#xff1f; 首先&#xff0c;什么是数据库&#xff1f;把它想象成一个数字游乐场&#xff0c;我们以结构化的方式组织和存储大量信息。现在&#xff0c;让我们来谈谈数据库的主要类型。 关系型数据库&#xff1a; 想象一下…

深度学习的目标检测算法综述

信息记录材料 2022年10月 第23卷第10期 【摘要】目标检测是深度学习的一个重要应用&#xff0c;目前在智能驾驶、工业检测相关领域都获得应用&#xff0c;具有重要的现实意义。本文对基于深度学习目标检测算法原理和应用情况进行简述&#xff0c;首先介绍结合区域提取和卷积神经…

Spring上IOC之@EnableAspectJAutoProxy

博主介绍&#xff1a;✌全网粉丝5W&#xff0c;全栈开发工程师&#xff0c;从事多年软件开发&#xff0c;在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战&#xff0c;博主也曾写过优秀论文&#xff0c;查重率极低&#xff0c;在这方面有丰富的经验…

3分钟,掌握“曲面屏显示屏”

在3分钟内掌握“曲面屏显示屏”的概念和特点&#xff0c;可以按照以下步骤进行&#xff1a; 一、了解曲面屏显示屏的基本概念 曲面屏显示屏是一种采用柔性塑料的显示屏&#xff0c;主要通过OLED面板来实现。相比直面屏幕&#xff0c;曲面屏幕弹性更好&#xff0c;不易破碎。此外…

扫描电镜(SEM)样品在进行扫描电镜观察前需要进行哪些处理

对于扫描电镜&#xff08;Scanning Electron Microscope&#xff0c;SEM&#xff09;样品的制备&#xff0c;需要经过一系列处理步骤以确保样品表面的干净、导电性好&#xff0c;并且能够提供高质量的显微图像。以下是一些常见的处理步骤&#xff1a; 1. 固定样品&#xff08;…

锂电3V升12V1A升压芯片WT3209

锂电3V升12V1A升压芯片WT3209 WT3209是一款高功率密度全集成BOOST升压转换器&#xff0c;具备高效能解决方案。3V升12V1A,5V升12V1A WT3209内部集成的功率MOSFET管导通电阻为上管13mΩ和下管11mΩ&#xff0c;具备2A开关电流能力&#xff0c;并且能够提供高达12.6V的输出电压。…

算法:只出现一次的数字(位运算:异或运算)

异或运算 时间复杂度 O(n) 空间复杂度 O(1) /*** param {number[]} nums* return {number}*/ var singleNumber function (nums) {let item nums[0]if (nums.length > 1) {for (let i 1; i < nums.length; i) {// 将10进制转成2进制进行异或运算&#xff08;相同得0&…

CB400X即将停产?NX400上线,本田最新的外观设计直接就国产了?

NX500 之前米兰车展的时候给大家分享过本田对于500系列的升级&#xff0c;并且宣布NX500代替CB500X&#xff0c;采用了全新的外观设计&#xff0c;没有看过的小伙伴可以查阅下之前的文章内容&#xff0c;不过最新的工信部的信息&#xff0c;可以看到NX500的外观设计应用到了CB…

光栅化渲染:光栅化算法实现

光栅化是将图元转换为二维图像的过程。 该图像的每个点都包含颜色和深度等信息。 因此&#xff0c;对图元进行光栅化由两部分组成。 第一个是确定窗口坐标中整数网格的哪些方格被图元占据。 第二个是为每个这样的方块分配颜色和深度值。 &#xff08;OpenGL 规范&#xff09; N…

CTD测试流程

连接 连接17Plus&#xff0c;用usb转232线&#xff0c;db9公针2、3分别接Data I/O的2、3。DB9的5接Data I/O的1。尼龙塞子打开状态。不用闭合。 软件连接 打开SeaTermAF V2&#xff0c;注意打开前先把串口插上&#xff0c;否则软件读不到串口。如果读不到&#xff0c;就在插…