7.0.0升级详细说明及步骤

开发和运行环境服务升级

1. 安装JDK17

点击打开JDK17下载页面

根据本地开发系统环境选择合适的安装包进行下载并使用

注意事项:

  1. 安装jdk17
  2. JAVA_HOME/PATH 环境变量配置

2. RocketMQ 升级

推荐升级至 4.8.x 版本

点击下载4.8.0版本

注:若 RocketMQ 版本低于 4.8.x 版本,需进行升级,否则无法正常运行在 JDK17 环境中。

支持程度 RocketMQ 版本 关键说明
基础运行兼容 4.8.0+ 首次适配 JDK 9+ 核心运行环境,修复模块导出、反射限制等基础问题
完整特性兼容 4.9.0+ 解决 JDK 9+ 下的网络、线程、日志等细节兼容问题,生产环境可落地
官方明确标注支持 5.0.0+(5.x 全系列) 官网文档明确声明支持 JDK 8/11/17(9/10 属于过渡版本,间接兼容)

对于无法升级 RocketMQ 版本的环境,可通过修改 runserver.shrunbroker.sh 运行脚本进行适配。在使用 cmd 脚本的运行环境中,可通过修改 runserver.cmdrunbroker.cmd 运行脚本进行适配。

下面提供了基于 4.5.2 版本修改后的 runserver.shrunbroker.sh 脚本进行参考。
修改运行脚本仅适用于无法升级中间件版本的特殊环境,下面提供的修改后的脚本,只能保证收发消息功能正常,无法保证其他功能的正常使用。

核心变更内容:

  1. JAVA_OPT 配置使用 --add-opens 参数以支持非模块化内置包在运行代码中的使用。
  2. 移除 JDK17 不再支持的其他 JVM 参数。
runserver.sh
#!/bin/sh

# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License.  You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

#===========================================================================================
# Java Environment Setting
#===========================================================================================
error_exit ()
{
    echo "ERROR: $1 !!"
    exit 1
}

[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=$HOME/jdk/java
[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/usr/java
[ ! -e "$JAVA_HOME/bin/java" ] && error_exit "Please set the JAVA_HOME variable in your environment, We need java(x64)!"

export JAVA_HOME
export JAVA="$JAVA_HOME/bin/java"
export BASE_DIR=$(dirname $0)/..
export CLASSPATH=.:${BASE_DIR}/lib/*:${BASE_DIR}/conf:${CLASSPATH}

#===========================================================================================
# JVM Configuration
#===========================================================================================
# The RAMDisk initializing size in MB on Darwin OS for gc-log
DIR_SIZE_IN_MB=600

choose_gc_log_directory()
{
    case "`uname`" in
        Darwin)
            if [ ! -d "/Volumes/RAMDisk" ]; then
                # create ram disk on Darwin systems as gc-log directory
                DEV=`hdiutil attach -nomount ram://$((2 * 1024 * DIR_SIZE_IN_MB))` > /dev/null
                diskutil eraseVolume HFS+ RAMDisk ${DEV} > /dev/null
                echo "Create RAMDisk /Volumes/RAMDisk for gc logging on Darwin OS."
            fi
            GC_LOG_DIR="/Volumes/RAMDisk"
        ;;
        *)
            # check if /dev/shm exists on other systems
            if [ -d "/dev/shm" ]; then
                GC_LOG_DIR="/dev/shm"
            else
                GC_LOG_DIR=${BASE_DIR}
            fi
        ;;
    esac
}

choose_gc_log_directory

# JAVA_OPT="${JAVA_OPT} -server -Xms2g -Xmx2g -Xmn1g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
JAVA_OPT="${JAVA_OPT} -server -Xms2g -Xmx2g -Xmn1g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m \
    --add-opens=java.base/java.lang=ALL-UNNAMED \
    --add-opens=java.base/java.lang.annotation=ALL-UNNAMED \
    --add-opens=java.base/java.lang.constant=ALL-UNNAMED \
    --add-opens=java.base/java.lang.invoke=ALL-UNNAMED \
    --add-opens=java.base/java.lang.module=ALL-UNNAMED \
    --add-opens=java.base/java.lang.ref=ALL-UNNAMED \
    --add-opens=java.base/java.lang.reflect=ALL-UNNAMED \
    --add-opens=java.base/java.lang.runtime=ALL-UNNAMED \
    --add-opens=java.base/java.io=ALL-UNNAMED \
    --add-opens=java.base/java.lang=ALL-UNNAMED \
    --add-opens=java.base/java.math=ALL-UNNAMED \
    --add-opens=java.base/java.net=ALL-UNNAMED \
    --add-opens=java.base/java.nio=ALL-UNNAMED \
    --add-opens=java.base/java.security=ALL-UNNAMED \
    --add-opens=java.base/java.text=ALL-UNNAMED \
    --add-opens=java.base/java.time=ALL-UNNAMED \
    --add-opens=java.base/java.util=ALL-UNNAMED \
    --add-opens=java.xml/com.sun.org.apache.xpath.internal.jaxp=ALL-UNNAMED \
    --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED \
    --add-opens=java.base/jdk.internal.access=ALL-UNNAMED"

# JAVA_OPT="${JAVA_OPT} -XX:+IgnoreUnrecognizedVMOptions -XX:+UseConcMarkSweepGC -XX:+UseCMSCompactAtFullCollection -XX:CMSInitiatingOccupancyFraction=70 -XX:+CMSParallelRemarkEnabled -XX:SoftRefLRUPolicyMSPerMB=0 -XX:+CMSClassUnloadingEnabled -XX:SurvivorRatio=8  -XX:-UseParNewGC"
JAVA_OPT="${JAVA_OPT} -XX:+IgnoreUnrecognizedVMOptions -XX:SoftRefLRUPolicyMSPerMB=0 -XX:+CMSClassUnloadingEnabled -XX:SurvivorRatio=8  -XX:-UseParNewGC"
# JAVA_OPT="${JAVA_OPT} -verbose:gc -Xloggc:${GC_LOG_DIR}/rmq_srv_gc_%p_%t.log -XX:+PrintGCDetails"
JAVA_OPT="${JAVA_OPT} -verbose:gc -Xloggc:${GC_LOG_DIR}/rmq_srv_gc_%p_%t.log"
# JAVA_OPT="${JAVA_OPT} -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=30m"
JAVA_OPT="${JAVA_OPT} -XX:-OmitStackTraceInFastThrow"
JAVA_OPT="${JAVA_OPT} -XX:-UseLargePages"
# JAVA_OPT="${JAVA_OPT} -Djava.ext.dirs=${JAVA_HOME}/jre/lib/ext:${BASE_DIR}/lib"
# JAVA_OPT="${JAVA_OPT} -Djava.ext.dirs=${BASE_DIR}/lib"
#JAVA_OPT="${JAVA_OPT} -Xdebug -Xrunjdwp:transport=dt_socket,address=9555,server=y,suspend=n"
JAVA_OPT="${JAVA_OPT} ${JAVA_OPT_EXT}"
JAVA_OPT="${JAVA_OPT} -cp ${CLASSPATH}"

$JAVA ${JAVA_OPT} $@
runbroker.sh
#!/bin/sh

# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License.  You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

#===========================================================================================
# Java Environment Setting
#===========================================================================================
error_exit ()
{
    echo "ERROR: $1 !!"
    exit 1
}

[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=$HOME/jdk/java
[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/usr/java
[ ! -e "$JAVA_HOME/bin/java" ] && error_exit "Please set the JAVA_HOME variable in your environment, We need java(x64)!"

export JAVA_HOME
export JAVA="$JAVA_HOME/bin/java"
export BASE_DIR=$(dirname $0)/..
export CLASSPATH=.:${BASE_DIR}/lib/*:${BASE_DIR}/conf:${CLASSPATH}

#===========================================================================================
# JVM Configuration
#===========================================================================================
# The RAMDisk initializing size in MB on Darwin OS for gc-log
DIR_SIZE_IN_MB=600

choose_gc_log_directory()
{
    case "`uname`" in
        Darwin)
            if [ ! -d "/Volumes/RAMDisk" ]; then
                # create ram disk on Darwin systems as gc-log directory
                DEV=`hdiutil attach -nomount ram://$((2 * 1024 * DIR_SIZE_IN_MB))` > /dev/null
                diskutil eraseVolume HFS+ RAMDisk ${DEV} > /dev/null
                echo "Create RAMDisk /Volumes/RAMDisk for gc logging on Darwin OS."
            fi
            GC_LOG_DIR="/Volumes/RAMDisk"
        ;;
        *)
            # check if /dev/shm exists on other systems
            if [ -d "/dev/shm" ]; then
                GC_LOG_DIR="/dev/shm"
            else
                GC_LOG_DIR=${BASE_DIR}
            fi
        ;;
    esac
}

choose_gc_log_directory

# JAVA_OPT="${JAVA_OPT} -server -Xms2g -Xmx2g -Xmn1g"
JAVA_OPT="${JAVA_OPT} -server -Xms2g -Xmx2g -Xmn1g \
    --add-opens=java.base/java.lang=ALL-UNNAMED \
    --add-opens=java.base/java.lang.annotation=ALL-UNNAMED \
    --add-opens=java.base/java.lang.constant=ALL-UNNAMED \
    --add-opens=java.base/java.lang.invoke=ALL-UNNAMED \
    --add-opens=java.base/java.lang.module=ALL-UNNAMED \
    --add-opens=java.base/java.lang.ref=ALL-UNNAMED \
    --add-opens=java.base/java.lang.reflect=ALL-UNNAMED \
    --add-opens=java.base/java.lang.runtime=ALL-UNNAMED \
    --add-opens=java.base/java.io=ALL-UNNAMED \
    --add-opens=java.base/java.lang=ALL-UNNAMED \
    --add-opens=java.base/java.math=ALL-UNNAMED \
    --add-opens=java.base/java.net=ALL-UNNAMED \
    --add-opens=java.base/java.nio=ALL-UNNAMED \
    --add-opens=java.base/java.security=ALL-UNNAMED \
    --add-opens=java.base/java.text=ALL-UNNAMED \
    --add-opens=java.base/java.time=ALL-UNNAMED \
    --add-opens=java.base/java.util=ALL-UNNAMED \
    --add-opens=java.xml/com.sun.org.apache.xpath.internal.jaxp=ALL-UNNAMED \
    --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED \
    --add-opens=java.base/jdk.internal.access=ALL-UNNAMED"

JAVA_OPT="${JAVA_OPT} -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1HeapRegionSize=16m -XX:G1ReservePercent=25 -XX:InitiatingHeapOccupancyPercent=30 -XX:SoftRefLRUPolicyMSPerMB=0"
# JAVA_OPT="${JAVA_OPT} -verbose:gc -Xloggc:${GC_LOG_DIR}/rmq_broker_gc_%p_%t.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCApplicationStoppedTime -XX:+PrintAdaptiveSizePolicy"
JAVA_OPT="${JAVA_OPT} -verbose:gc -Xloggc:${GC_LOG_DIR}/rmq_broker_gc_%p_%t.log"
# JAVA_OPT="${JAVA_OPT} -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=30m"
JAVA_OPT="${JAVA_OPT} -XX:-OmitStackTraceInFastThrow"
JAVA_OPT="${JAVA_OPT} -XX:+AlwaysPreTouch"
JAVA_OPT="${JAVA_OPT} -XX:MaxDirectMemorySize=15g"
JAVA_OPT="${JAVA_OPT} -XX:-UseLargePages -XX:-UseBiasedLocking"
# JAVA_OPT="${JAVA_OPT} -Djava.ext.dirs=${JAVA_HOME}/jre/lib/ext:${BASE_DIR}/lib"
# JAVA_OPT="${JAVA_OPT} -Djava.ext.dirs=${BASE_DIR}/lib"
#JAVA_OPT="${JAVA_OPT} -Xdebug -Xrunjdwp:transport=dt_socket,address=9555,server=y,suspend=n"
JAVA_OPT="${JAVA_OPT} ${JAVA_OPT_EXT}"
JAVA_OPT="${JAVA_OPT} -cp ${CLASSPATH}"

numactl --interleave=all pwd > /dev/null 2>&1
if [ $? -eq 0 ]
then
    if [ -z "$RMQ_NUMA_NODE" ] ; then
        numactl --interleave=all $JAVA ${JAVA_OPT} $@
    else
        numactl --cpunodebind=$RMQ_NUMA_NODE --membind=$RMQ_NUMA_NODE $JAVA ${JAVA_OPT} $@
    fi
else
    $JAVA ${JAVA_OPT} $@
fi

3. Zookeeper 升级

推荐升级至 3.9.x 版本

点击下载3.9.4版本

注: 若 Zookeeper 版本低于 3.6.x 版本,需进行升级,否则无法正常运行在 JDK17 环境中。

支持程度 ZooKeeper 版本 关键说明
基础运行兼容 3.6.0+ 首次修复 JDK 9+ 模块化、反射限制等核心问题,可运行但需手动适配启动参数
完整特性兼容 3.6.3+ 解决 JDK 9+ 下的日志、SSL、工具类等边缘场景兼容问题,生产环境可落地
官方明确标注支持 3.7.0+ / 3.8.0+ 官网文档明确声明支持 JDK 8/11(9/10 为过渡版本,间接兼容),移除老旧 JDK 依赖
LTS 版本最优选择 3.8.x(稳定版)/ 3.9.x 长期支持版本,完全适配 JDK 11/17(LTS),无额外兼容成本

代码升级

1. pom编译版本升级

将原有声明了 maven.compilerjava.version 相关参数进行修改

<!--
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<java.version>1.8</java.version>
-->

<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<java.version>17</java.version>
<java.vendor>Oracle</java.vendor>

2. maven 编译插件升级

注: 按需选择升级,只要保证 install, package, deploy 等常用生命周期正常使用即可

<maven.compiler.version>3.14.0</maven.compiler.version>
<maven.surefire.version>3.5.3</maven.surefire.version>
<maven.source.version>3.3.1</maven.source.version>
<maven.install.version>3.1.4</maven.install.version>
<maven.deploy.version>3.1.4</maven.deploy.version>
<maven.war.version>3.4.0</maven.war.version>

3. 第三方版本升级(无需执行)

注: 此处不包含间接升级的第三方依赖,仅包含 Oinone 主动升级的第三方依赖。

<commons.lang3.version>3.18.0</commons.lang3.version>
<commons.collections4.version>4.5.0</commons.collections4.version>
<commons.beanutils.version>1.11.0</commons.beanutils.version>
<gson.version>2.13.1</gson.version>
<druid.version>1.2.25</druid.version>
<mybatis.version>3.5.19</mybatis.version>
<mybatis.spring.version>3.0.4</mybatis.spring.version>
<mybatis-plus.version>3.5.11</mybatis-plus.version>
<thymeleaf.version>3.1.3.RELEASE</thymeleaf.version>
<aspectj.version>1.9.24</aspectj.version>
<aspectjweaver.version>1.9.24</aspectjweaver.version>
<caffeine.version>3.2.2</caffeine.version>
<groovy.version>4.0.28</groovy.version>
<kryo.version>5.6.2</kryo.version>
<dubbo.version>3.2.18</dubbo.version>
<dubbo.extensions.version>3.3.1</dubbo.extensions.version>
<spring.boot.version>3.3.13</spring.boot.version>
<spring.cloud.version>2023.0.6</spring.cloud.version>
<spring.cloud.alibaba.version>2023.0.3.3</spring.cloud.alibaba.version>
<spring.cloud.nacos.version>2023.0.3.3</spring.cloud.nacos.version>
<spring.version>6.1.21</spring.version>
<atomikos.version>6.0.0</atomikos.version>
<jedis.version>5.0.2</jedis.version>
<httpclient.version>4.5.13</httpclient.version>
<minio.version>6.0.13</minio.version>
<okhttp.version>3.14.9</okhttp.version>
<org.junit5.platform.version>1.13.4</org.junit5.platform.version>
<org.junit5.jupiter.version>5.13.4</org.junit5.jupiter.version>
<org.junit5.vintage.version>5.13.4</org.junit5.vintage.version>
<junit4.version>4.13.2</junit4.version>
<jacoco.version>0.8.13</jacoco.version>

4. Oinone Bom 升级

注:7.x 版本继续保持原有依赖方式不变,仅需升级版本号即可完成 Oinone 平台升级。最新版本请参考更新日志

<oinone.version>7.0.1</oinone.version>

<dependency>
    <groupId>pro.shushi</groupId>
    <artifactId>oinone-bom</artifactId>
    <version>${oinone.version}</version>
    <type>pom</type>
    <scope>import</scope>
</dependency>

5. 类引入路径变更

JDK 17 作为长期支持版,已完全移除内置的 Java EE 相关模块(JDK 9 开始模块化,JDK 11 彻底移除),因此升级时若依赖 Java EE 组件,会遇到 javax → jakarta 的包名变更问题。

下面列出了所有 Oinone 已知的类引入变更,可在项目中进行全局替换。其他未列出变更内容可参考文末的参考资料或自行搜索解决。

# javax.annotation.Resource
jakarta.annotation.Resource

# javax.annotation.PostConstruct
jakarta.annotation.PostConstruct

# javax.servlet.
jakarta.servlet.

# javax.validation.
jakarta.validation.

# javax.activation.
jakarta.activation.

# javax.mail.
jakarta.mail.

一些特殊情况:

  1. Oinone 7.x 首发版本未处理 Apache Camel 升级,导致通过 Exchange.HTTP_SERVLET_RESPONSE 变量获取 HttpServletResponse 值时需要使用 javax.servlet.http.HttpServletResponse 而不是 jakarta.servlet.http.HttpServletResponse

6. yaml 配置变更

核心变更内容:

  1. 移除 bootstrap.yml,使用新的 profiles 指定方式。
  2. 使用 spring.main.allow-circular-references=true 启用 Spring 循环依赖处理。
  3. Spring Data 相关配置升级,以 Redis 为例,配置前缀由 spring.redis 改为 spring.data.redis

具体变更步骤

  1. 移除 bootstrap.yml 改为使用 application.yml 作为公共配置。
application.yml
spring:
  profiles:
    active: dev
  main:
    allow-circular-references: true
  application:
    name: pamirs-demo
  cloud:
    service-registry:
      auto-registration:
        enabled: false
    config:
      enabled: false
      uri: http://127.0.0.1:7001
      label: master
      profile: dev
    nacos:
      server-addr: http://127.0.0.1:8848
      discovery:
        enabled: false
        namespace:
        prefix: application
        file-extension: yml
      config:
        enabled: false
        namespace:
        prefix: application
        file-extension: yml
dubbo:
  application:
    name: pamirs-demo
    version: 1.0.0
    register-consumer: false
  registry:
    address: zookeeper://127.0.0.1:2181
  protocol:
    name: dubbo
    port: -1
    serialization: pamirs
    payload: 104857600
  scan:
    base-packages: pro.shushi
  cloud:
    subscribed-services:
pamirs:
  default:
    environment-check: true
    tenant-check: true

变更要点:

  • spring.profiles.active 配置用于指定具体环境配置后缀,下面的配置示例指向 application-dev.yml 配置文件。
  • spring.main.allow-circular-references=true:Spring 不再主动处理循环依赖引用问题,需要显式启用,目前 Oinone 暂不支持关闭,未来会陆续支持。
  1. application-dev.yml 配置变更
# spring:
#   profiles: dev

spring:
  config:
    activate:
      on-profile: dev
  1. Redis 配置由 spring.redis 前缀改为 spring.data.redis 前缀,其他配置可参考官方文档
# spring:
#   redis:
#     database: 1
#     host: 127.0.0.1
#     port: 6379
#     timeout: 2000

spring:
  data:
    redis:
      database: 1
      host: 127.0.0.1
      port: 6379
      timeout: 2000

变更要点:

  • Oinone 7.x 开始将完整支持 org.springframework.boot.autoconfigure.data.redis.RedisProperties 未来所有变更将跟随 Spring Data Redis 升级而变化。

7. 类变更

类名或路径变更

pro.shushi.pamirs.framework.connectors.data.kv.RedisSimpleConfig -> pro.shushi.pamirs.framework.connectors.data.kv.PamirsRedisConfig
pro.shushi.pamirs.auth.api.extend.AuthPermissionCacheExtendApi -> pro.shushi.pamirs.auth.api.extend.cache.AuthPermissionCacheExtendApi
pro.shushi.pamirs.auth.api.extend.PermissionNodeConvertExtendApi -> pro.shushi.pamirs.auth.api.extend.load.PermissionNodeConvertExtendApi
pro.shushi.pamirs.auth.api.extend.PermissionNodeLoadExtendApi -> pro.shushi.pamirs.auth.api.extend.load.PermissionNodeLoadExtendApi

移除废弃类或方法

pro.shushi.pamirs.framework.connectors.data.kv.RedisClusterConfig
pro.shushi.pamirs.framework.connectors.data.kv.RedisClusterProperty
pro.shushi.pamirs.framework.connectors.data.kv.RedisConfig
pro.shushi.pamirs.framework.connectors.data.kv.RedisSentinelConfig
pro.shushi.pamirs.framework.connectors.data.kv.RedisSentinelProperty
pro.shushi.pamirs.auth.api.service.IRoleCustom
pro.shushi.pamirs.auth.api.runtime.holder.AuthVerificationApiHolder
pro.shushi.pamirs.auth.api.enmu.PermissionDataSourceEnum
pro.shushi.pamirs.auth.api.extend.load.PermissionNodeLoadExtendApi#buildRootPermissions

开发运行和部署变更

idea 启动配置中添加 JVM 参数用于开发运行

--add-opens=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED
--add-opens=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED
--add-opens=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED
--add-opens=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED
--add-opens=jdk.compiler/com.sun.tools.javac.jvm=ALL-UNNAMED
--add-opens=jdk.compiler/com.sun.tools.javac.launcher=ALL-UNNAMED
--add-opens=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED
--add-opens=jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED
--add-opens=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED
--add-opens=jdk.compiler/com.sun.tools.javac.platform=ALL-UNNAMED
--add-opens=jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED
--add-opens=jdk.compiler/com.sun.tools.javac.resources=ALL-UNNAMED
--add-opens=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED
--add-opens=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED
--add-opens=jdk.compiler/com.sun.source.tree=ALL-UNNAMED
--add-opens=java.base/java.lang=ALL-UNNAMED
--add-opens=java.base/java.lang.annotation=ALL-UNNAMED
--add-opens=java.base/java.lang.constant=ALL-UNNAMED
--add-opens=java.base/java.lang.invoke=ALL-UNNAMED
--add-opens=java.base/java.lang.module=ALL-UNNAMED
--add-opens=java.base/java.lang.ref=ALL-UNNAMED
--add-opens=java.base/java.lang.reflect=ALL-UNNAMED
--add-opens=java.base/java.lang.runtime=ALL-UNNAMED
--add-opens=java.base/java.io=ALL-UNNAMED
--add-opens=java.base/java.lang=ALL-UNNAMED
--add-opens=java.base/java.math=ALL-UNNAMED
--add-opens=java.base/java.net=ALL-UNNAMED
--add-opens=java.base/java.nio=ALL-UNNAMED
--add-opens=java.base/java.security=ALL-UNNAMED
--add-opens=java.base/java.text=ALL-UNNAMED
--add-opens=java.base/java.time=ALL-UNNAMED
--add-opens=java.base/java.util=ALL-UNNAMED
--add-opens=java.xml/com.sun.org.apache.xpath.internal.jaxp=ALL-UNNAMED
--add-opens=java.base/jdk.internal.access=ALL-UNNAMED

服务器部署命令中添加 JVM 参数

java \
  --add-opens=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED \
  --add-opens=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED \
  --add-opens=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED \
  --add-opens=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED \
  --add-opens=jdk.compiler/com.sun.tools.javac.jvm=ALL-UNNAMED \
  --add-opens=jdk.compiler/com.sun.tools.javac.launcher=ALL-UNNAMED \
  --add-opens=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED \
  --add-opens=jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED \
  --add-opens=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED \
  --add-opens=jdk.compiler/com.sun.tools.javac.platform=ALL-UNNAMED \
  --add-opens=jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED \
  --add-opens=jdk.compiler/com.sun.tools.javac.resources=ALL-UNNAMED \
  --add-opens=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED \
  --add-opens=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED \
  --add-opens=jdk.compiler/com.sun.source.tree=ALL-UNNAMED \
  --add-opens=java.base/java.lang=ALL-UNNAMED \
  --add-opens=java.base/java.lang.annotation=ALL-UNNAMED \
  --add-opens=java.base/java.lang.constant=ALL-UNNAMED \
  --add-opens=java.base/java.lang.invoke=ALL-UNNAMED \
  --add-opens=java.base/java.lang.module=ALL-UNNAMED \
  --add-opens=java.base/java.lang.ref=ALL-UNNAMED \
  --add-opens=java.base/java.lang.reflect=ALL-UNNAMED \
  --add-opens=java.base/java.lang.runtime=ALL-UNNAMED \
  --add-opens=java.base/java.io=ALL-UNNAMED \
  --add-opens=java.base/java.lang=ALL-UNNAMED \
  --add-opens=java.base/java.math=ALL-UNNAMED \
  --add-opens=java.base/java.net=ALL-UNNAMED \
  --add-opens=java.base/java.nio=ALL-UNNAMED \
  --add-opens=java.base/java.security=ALL-UNNAMED \
  --add-opens=java.base/java.text=ALL-UNNAMED \
  --add-opens=java.base/java.time=ALL-UNNAMED \
  --add-opens=java.base/java.util=ALL-UNNAMED \
  --add-opens=java.xml/com.sun.org.apache.xpath.internal.jaxp=ALL-UNNAMED \
  --add-opens=java.base/jdk.internal.access=ALL-UNNAMED \
  -jar boot.jar

参考资料: 按组件分类的包名变更

注: 此参考资料由 AI 生成,生成结果可能出现偏差或错误,请仔细甄别。

1. Servlet / JSP / EL(最常用)

原 JDK 8/Java EE 包名 JDK 17/Jakarta EE 包名 说明
javax.servlet.* jakarta.servlet.* 核心 Servlet API(Request/Response/Filter 等)
javax.servlet.http.* jakarta.servlet.http.* HTTP 相关 Servlet API
javax.servlet.annotation.* jakarta.servlet.annotation.* Servlet 注解(@WebServlet、@WebFilter 等)
javax.servlet.jsp.* jakarta.servlet.jsp.* JSP 核心 API
javax.servlet.jsp.tagext.* jakarta.servlet.jsp.tagext.* JSP 标签扩展
javax.el.* jakarta.el.* 表达式语言(EL)
javax.servlet.jsp.el.* jakarta.servlet.jsp.el.* JSP EL 集成

2. JPA(持久化)

原 JDK 8/Java EE 包名 JDK 17/Jakarta EE 包名 说明
javax.persistence.* jakarta.persistence.* JPA 核心 API(@Entity、@Table、EntityManager 等)
javax.persistence.criteria.* jakarta.persistence.criteria.* JPA 条件查询
javax.persistence.metamodel.* jakarta.persistence.metamodel.* JPA 元模型
javax.persistence.spi.* jakarta.persistence.spi.* JPA 服务提供接口

3. JAX-RS(RESTful)

原 JDK 8/Java EE 包名 JDK 17/Jakarta EE 包名 说明
javax.ws.rs.* jakarta.ws.rs.* JAX-RS 核心 API(@GET、@POST、Path 等)
javax.ws.rs.client.* jakarta.ws.rs.client.* 客户端 API
javax.ws.rs.core.* jakarta.ws.rs.core.* 核心对象(Response、MediaType 等)
javax.ws.rs.ext.* jakarta.ws.rs.ext.* 扩展接口

4. JAX-WS(WebService)

原 JDK 8/Java EE 包名 JDK 17/Jakarta EE 包名 说明
javax.xml.ws.* jakarta.xml.ws.* JAX-WS 核心 API
javax.xml.ws.handler.* jakarta.xml.ws.handler.* 处理器 API
javax.xml.ws.http.* jakarta.xml.ws.http.* HTTP 绑定
javax.jws.* jakarta.jws.* WebService 注解(@WebService、@WebMethod 等)
javax.xml.bind.* jakarta.xml.bind.* JAXB(XML 绑定,JDK 8 内置,JDK 11+ 需手动引入)
javax.xml.bind.annotation.* jakarta.xml.bind.annotation.* JAXB 注解(@XmlRootElement 等)

5. JMS(消息队列)

原 JDK 8/Java EE 包名 JDK 17/Jakarta EE 包名 说明
javax.jms.* jakarta.jms.* JMS 核心 API(Connection、Session、Message 等)

6. Bean Validation(参数校验)

原 JDK 8/Java EE 包名 JDK 17/Jakarta EE 包名 说明
javax.validation.* jakarta.validation.* 校验核心 API(@Valid、@NotNull、Validator 等)
javax.validation.constraints.* jakarta.validation.constraints.* 内置校验注解
javax.validation.groups.* jakarta.validation.groups.* 校验分组

7. CDI(依赖注入)

原 JDK 8/Java EE 包名 JDK 17/Jakarta EE 包名 说明
javax.enterprise.context.* jakarta.enterprise.context.* CDI 上下文(@RequestScoped、@SessionScoped 等)
javax.enterprise.inject.* jakarta.enterprise.inject.* CDI 注入(@Inject、@Named 等)
javax.inject.* jakarta.inject.* JSR-330 依赖注入(Spring 也依赖此包)

8. 其他常用组件

原 JDK 8/Java EE 包名 JDK 17/Jakarta EE 包名 说明
javax.annotation.* jakarta.annotation.* 通用注解(@Resource、@PostConstruct、@PreDestroy 等)
javax.transaction.* jakarta.transaction.* 事务 API(@Transactional、UserTransaction 等)
javax.mail.* jakarta.mail.* JavaMail 邮件 API
javax.json.* jakarta.json.* JSON 处理 API
javax.faces.* jakarta.faces.* JSF 前端框架

Oinone社区 作者:张博昊原创文章,如若转载,请注明出处:https://doc.oinone.top/version/25243.html

访问Oinone官网:https://www.oinone.top获取数式Oinone低代码应用平台体验

(0)
张博昊的头像张博昊数式管理员
上一篇 2025年12月17日 pm12:00
下一篇 2025年12月17日 pm12:00

相关推荐

  • 5.0.0版本bugfix:支持nacos作为dubbo注册中心,请升级对应版本

    版本号: 5.0.1版本发布日期:2024.05.31更新要点:支持nacos作为dubbo注册中心 5.0.1版本 升级说明及步骤(已升级为5.0.0版本忽略) 此版本与4.7.8版本的兼容方案如下,请严格参照升级说明及步骤进行1、【重要】升级前备份base库和用户权限模块所在的库 2、【重要】升级过程执行SQL严格按照升级文档中的步骤执行。特别注意:部分SQL是要求【发布前执行】,部分SQL是要求【发布后执行】 5.0.0升级详细说明及步骤 升级内容(5.0.0) 支持nacos作为dubbo注册中心 EIP阶段获取的数据结果额外存储到另一张表 版本包信息 未使用到的版本号请忽略,按项目中使用到的进行替换 <!– 平台基础 –> <pamirs.middleware.version>5.0.0</pamirs.middleware.version> <pamirs.k2.version>5.0.1</pamirs.k2.version> <pamirs.framework.version>5.0.2</pamirs.framework.version> <pamirs.boot.version>5.0.1</pamirs.boot.version> <pamirs.distribution.version>5.0.1</pamirs.distribution.version> <!– 平台功能 –> <pamirs.metadata.manager>5.0.0</pamirs.metadata.manager> <pamirs.core.version>5.0.2</pamirs.core.version> <pamirs.workflow.version>5.0.2</pamirs.workflow.version> <pamirs.workbench.version>5.0.1</pamirs.workbench.version> <pamirs.data.visualization.version>5.0.1</pamirs.data.visualization.version> <!– 设计器 –> <pamirs.designer.common.version>5.0.1</pamirs.designer.common.version> <pamirs.flow.designer.base.version>5.0.1</pamirs.flow.designer.base.version> <pamirs.workflow.designer.version>5.0.1</pamirs.workflow.designer.version> <pamirs.model.designer.version>5.0.1</pamirs.model.designer.version> <pamirs.ui.designer.version>5.0.1</pamirs.ui.designer.version> <pamirs.data.designer.version>5.0.1</pamirs.data.designer.version> <pamirs.dataflow.designer.version>5.0.1</pamirs.dataflow.designer.version> <pamirs.eip.designer.version>5.0.1</pamirs.eip.designer.version> 注意镜像名称变化 体验镜像:(所有中间件及前后端服务,包含全部设计器)docker pull harbor.oinone.top/oinone/oinone-designer-full-v5.0:5.0.2 部署镜像:(包含前后端服务,包含全部设计器)docker pull harbor.oinone.top/oinone/oinone-designer-mini-v5.0:5.0.2 流程设计器镜像:(包含前后端服务,仅包含流程设计器)docker pull harbor.oinone.top/oinone/workflow-designer-v5.0:5.0.2 流程设计器镜像:(包含前后端服务,仅包含流程设计器,非外部库镜像)docker pull harbor.oinone.top/oinone/workflow-designer-standard-v5.0:5.0.2 独立部署流程设计器JAR:(包含前后端服务,仅包含流程设计器)pamirs-workflow-designer-boot-v5.0-5.0.2.jarpamirs-workflow-designer-boot-v5.0-latest.jar 后端无代码设计器Jar包启动方法 如果您有任何问题、建议或反馈,请随时联系我们。为了获得最佳体验,请及时更新至最新版本。我们将继续努力改进产品,提供更好的服务。谢谢!

    2024年5月31日
    86700
  • 4.7.8.13版本升级说明-20240601

    版本号: 4.7.8.13版本发布日期:2024.06.01更新要点:支持nacos作为dubbo注册中心 4.7.8.13版本 升级内容 修复界面设计器日期时间格式化显示错误的问题 支持nacos作为dubbo注册中心 EIP阶段获取的数据结果额外存储到另一张表 版本包信息 未使用到的版本号请忽略,按项目中使用到的进行替换 <!– 平台基础 –> <pamirs.middleware.version>4.7.8.3</pamirs.middleware.version> <pamirs.k2.version>4.7.8.5</pamirs.k2.version> <pamirs.framework.version>4.7.8.11</pamirs.framework.version> <pamirs.boot.version>4.7.8.8</pamirs.boot.version> <pamirs.distribution.version>4.7.8.3</pamirs.distribution.version> <!– 平台功能 –> <pamirs.metadata.manager>4.7.8</pamirs.metadata.manager> <pamirs.core.version>4.7.8.10</pamirs.core.version> <pamirs.workflow.version>4.7.8.9</pamirs.workflow.version> <pamirs.workbench.version>4.7.8</pamirs.workbench.version> <pamirs.data.visualization.version>4.7.8</pamirs.data.visualization.version> <!– 设计器 –> <pamirs.designer.common.version>4.7.8</pamirs.designer.common.version> <pamirs.flow.designer.base.version>4.7.8.1</pamirs.flow.designer.base.version> <pamirs.workflow.designer.version>4.7.8</pamirs.workflow.designer.version> <pamirs.model.designer.version>4.7.8</pamirs.model.designer.version> <pamirs.ui.designer.version>4.7.8.7</pamirs.ui.designer.version> <pamirs.data.designer.version>4.7.8</pamirs.data.designer.version> <pamirs.dataflow.designer.version>4.7.8</pamirs.dataflow.designer.version> <pamirs.eip.designer.version>4.7.8.1</pamirs.eip.designer.version> 注意镜像名称变化 体验镜像:(所有中间件及前后端服务,包含全部设计器)docker pull harbor.oinone.top/oinone/oinone-designer-full-v4.8:4.8.5.7 部署镜像:(包含前后端服务,包含全部设计器)docker pull harbor.oinone.top/oinone/oinone-designer-mini-v4.8:4.8.5.7 流程设计器镜像:(包含前后端服务,仅包含流程设计器)docker pull harbor.oinone.top/oinone/workflow-designer-v4.8:4.8.5.7 流程设计器镜像:(包含前后端服务,仅包含流程设计器,非外部库镜像)docker pull harbor.oinone.top/oinone/workflow-designer-standard-v4.8:4.8.5.7 独立部署流程设计器JAR:(包含前后端服务,仅包含流程设计器)pamirs-workflow-designer-boot-4.8.5.7.jar 后端无代码设计器Jar包启动方法 如果您有任何问题、建议或反馈,请随时联系我们。为了获得最佳体验,请及时更新至最新版本。我们将继续努力改进产品,提供更好的服务。谢谢!

    2024年6月1日
    1.0K00
  • 正式版发布:Oinone 6.2.0 版本 Oinone 正式开源,邀您体验

    版本号: 6.2.0 版本发布日期:2025.06.09更新要点:Oinone 正式开源 6.2.0 版本 GitHub: 后端: https://github.com/oinone/oinone-pamirs 前端: https://github.com/oinone/oinone-kunlun Gitee: 后端: https://gitee.com/oinone/oinone-pamirs 前端: https://gitee.com/oinone/oinone-kunlun 20250929 升级内容 镜像版本升级: 6.2.16 –> 6.2.17 后端版本升级: 6.2.16 –> 6.2.17 前端版本升级 修复视图加载时未正确设置优先级的问题 修复数据库集成接口无法正确转换为单个对象类型的问题 修复树/级联相关组件在某些情况下无法正常查询的问题 修复eip日志在某些情况下无法正常记录的问题 修复sql_record在指定 id 列名时导致更新失败的问题 20250911 升级内容 镜像版本升级: 6.2.15 –> 6.2.16 后端版本升级: 6.2.15 –> 6.2.16 前端版本升级 无代码模块加载新增自动解析依赖模块的功能 修复环境检查在使用系统变量时未正确解析导致业务工程无法正常启动的问题 修复环境历史记录未正确存储的问题 修复oracle数据库在使用虚拟字段时出现无法空指针的问题 修复使用oracle-12c版本时schedule无法正常插入的问题 修复文件集使用local类型的oss无法正常使用的问题 根据字段导出功能在使用关联关系字段时支持使用界面设计器配置的选项标题进行自动填充 修复数据可视化使用连接器作为数据源时无法正常导出的问题 修复模型设计器专家模式无法正常导入的问题 20250908 升级内容 镜像版本升级: 6.2.14 –> 6.2.15 后端版本升级: 6.2.14 –> 6.2.15 前端版本升级 EIP-JDBC 支持按数据库类型配置连接池参数 修复dubbo配置不生效的问题 修复数据可视化属性面板无法全部折叠或展开的问题 修复集成设计器直接创建开放接口无法正确传参的问题 修复tomcat部署时出现 csrfRefererFilter 不支持异步的问题 修复默认 ScriptEngine 未正确生效的问题 修复 boolean 序列化在使用 NDS 驱动时出现枚举空值的问题 修复数据可视化自定义组件在某些情况下无法正确查询数据的问题 修复数据可视化文件集识别字段类型错误的问题 20250901 升级内容 镜像版本升级: 6.2.12 –> 6.2.14 后端版本升级: 6.2.12 –> 6.2.14 前端版本升级 修复树视图/左树右表在指定列名时查询异常的问题 修复多对多关联关系使用静态常量时无法正常保存的问题 修复集成设计器数据库修改连接数据库时未正确刷新的问题 新增是否使用请求线程池开关,可通过 pamirs.request.thread.deferred=false 设置为禁用,用于跳过 tomcat 部署时用户未登录的问题 修复一对多保存失败的问题 修复单选树选择和级联选择字段组件在指定列名时查询异常的问题 20250822 升级内容 镜像版本升级: 6.2.11 –> 6.2.12 后端版本升级: 6.2.11 –> 6.2.12 修复集成设计器新建或复制API时未正确记录日志的问题 修复发布为开放接口时出入参转换异常的问题 修复开放接口调用集成接口时日志保存异常的问题 20250818 升级内容 镜像版本升级: 6.2.10 –> 6.2.11 后端版本升级: 6.2.10 –> 6.2.11 前端版本升级 集成应用-集成接口新增测试功能 集成设计器集成接口详情页面新增测试功能 集成设计器body参数支持保留空值功能 集成设计器的集成接口发布为开放接口后,删除时进行二次确认提示 集成设计器数据库连接支持断开连接和重新连接功能(支持分布式启停) 集成设计器WebService API支持xml解析功能 修复元数据继承计算未正确处理由界面设计器创建的提交动作的问题 修复界面设计器复制视图到子模型时无法复制提交动作的问题 修复界面设计器复制时切换模型时验证不通过的问题 修复从上游生成的菜单无法正确导出的问题 修复集成设计器导出时出现getDriver序列化异常的问题 修复数据可视化快捷日期选择错误的问题 开放dataflow-api和eip-designer-api包 <pamirs.dataflow.designer.version>6.2.1</pamirs.dataflow.designer.version> <pamirs.eip.designer.version>6.2.7</pamirs.eip.designer.version> <dependencyManagement> <dependency> <groupId>pro.shushi.pamirs.dataflow</groupId> <artifactId>pamirs-dataflow-designer-api</artifactId> <version>${pamirs.dataflow.designer.version}</version> </dependency> <dependency> <groupId>pro.shushi.pamirs.designer</groupId> <artifactId>pamirs-eip-designer-api</artifactId> <version>${pamirs.eip.designer.version}</version> </dependency> </dependencyManagement> 20250807 升级内容 镜像版本升级: 6.2.9 –> 6.2.10 后端版本升级: 6.2.9 –> 6.2.10 前端版本升级 添加复合图表类型,调整坐标轴、下钻、跳转样式 添加计算字段 添加允许用户自定义查询数量 界面设计器图表支持高度配置 集成设计器execl导入数据时允许修改数据类型 集成设计器-连接器-数据库-新增/编辑表单的密码使用密文 20250801 升级内容 镜像版本升级: 6.2.8 –> 6.2.9 后端版本升级:…

    2025年6月9日
    1.8K00
  • 5.2.0版本feature:优化远程调用和工作流ORM转换性能,请升级对应版本

    版本号: 5.2.10 版本发布日期:2024.11.12更新要点:优化远程调用和工作流ORM转换性能 5.2.0 版本 升级说明及步骤(已升级为5.0.0版本忽略) 此版本与4.7.8版本的兼容方案如下,请严格参照升级说明及步骤进行1、【重要】升级前备份base库和用户权限模块所在的库 2、【重要】升级过程执行SQL严格按照升级文档中的步骤执行。特别注意:部分SQL是要求【发布前执行】,部分SQL是要求【发布后执行】 5.0.0升级详细说明及步骤 升级内容(5.2.0) 优化远程调用ORM转换性能 优化工作流ORM转换性能 修复数据审计IP地址和设备信息获取失败的问题 修复权限验证设计器创建的动作时校验失败的问题 修复界面设计器导出元数据时导致内存泄漏的问题 修复翻译页面表格渲染错误的问题 修复PostgreSQL使用groupBy分页查询时count执行错误的问题 请尽可能保证业务工程前后端服务以及设计器同步升级前端服务仅需重新执行npm install即可自动升级到最新版本 版本包信息 Oinone平台部署及依赖说明(v5.0) 未使用到的版本号请忽略,按项目中使用到的进行替换。 <!– 平台基础 –> <pamirs.middleware.version>5.2.3</pamirs.middleware.version> <pamirs.k2.version>5.2.7</pamirs.k2.version> <pamirs.framework.version>5.2.10</pamirs.framework.version> <pamirs.boot.version>5.2.9</pamirs.boot.version> <pamirs.distribution.version>5.2.7</pamirs.distribution.version> <!– 平台功能 –> <pamirs.metadata.manager>5.2.1</pamirs.metadata.manager> <pamirs.designer.metadata.version>5.2.0</pamirs.designer.metadata.version> <pamirs.core.version>5.2.11</pamirs.core.version> <pamirs.workflow.version>5.2.3</pamirs.workflow.version> <pamirs.workbench.version>5.2.0</pamirs.workbench.version> <pamirs.data.visualization.version>5.2.5</pamirs.data.visualization.version> <!– 设计器 –> <pamirs.designer.common.version>5.2.1</pamirs.designer.common.version> <pamirs.flow.designer.base.version>5.2.2</pamirs.flow.designer.base.version> <pamirs.workflow.designer.version>5.2.0</pamirs.workflow.designer.version> <pamirs.model.designer.version>5.2.3</pamirs.model.designer.version> <pamirs.ui.designer.version>5.2.7</pamirs.ui.designer.version> <pamirs.data.designer.version>5.2.4</pamirs.data.designer.version> <pamirs.dataflow.designer.version>5.2.0</pamirs.dataflow.designer.version> <pamirs.eip.designer.version>5.2.3</pamirs.eip.designer.version> 镜像说明 所有镜像均使用docker manifest支持amd64和arm64架构。如镜像拉取过慢,可在对应镜像Tag添加-amd64、-arm64后缀获取单一架构镜像。 docker pull harbor.oinone.top/oinone/oinone-designer-full-v5.2:5.2.10.3-amd64 docker pull harbor.oinone.top/oinone/oinone-designer-full-v5.2:5.2.10.3-arm64 镜像拉取 镜像或JAR版本:5.2.10.3 体验镜像:(所有中间件及前后端服务,包含全部设计器) docker pull harbor.oinone.top/oinone/oinone-designer-full-v5.2:5.2.10.3 部署镜像:(包含前后端服务,包含全部设计器) docker pull harbor.oinone.top/oinone/oinone-designer-mini-v5.2:5.2.10.3 流程设计器镜像:(包含前后端服务,仅包含流程设计器) docker pull harbor.oinone.top/oinone/workflow-designer-v5.2:5.2.10.3 后端镜像:(仅包含后端服务,包含全部设计器) docker pull harbor.oinone.top/oinone/designer-backend-v5.2:5.2.10.3 前端镜像:(仅包含前端服务,包含全部设计器) PS:前端镜像版本为独立版本,与其他镜像版本不同。原基础镜像为nginx-1.21.0版本,从5.0.7版本开始使用nginx-1.24.0版为基础镜像 docker pull harbor.oinone.top/oinone/designer-frontend-v5.2:5.2.11 独立部署所有设计器JAR:(后端服务,包含所有设计器)pamirs-designer-boot-v5.2-5.2.10.3.jarpamirs-designer-boot-v5.2-latest.jar 独立部署流程设计器JAR:(后端服务,仅包含流程设计器)pamirs-workflow-designer-boot-v5.2-5.2.10.3.jarpamirs-workflow-designer-boot-v5.2-latest.jar 后端无代码设计器Jar包启动方法 如果您有任何问题、建议或反馈,请随时联系我们。为了获得最佳体验,请及时更新至最新版本。我们将继续努力改进产品,提供更好的服务。谢谢!

    2024年11月12日
    1.0K00
  • 4.0.x版本更新说明-20230419

    版本号:4.0.x发布日期:2023.04.19更新要点:前端发布内容包括修复viewCache.get异常、关系字段异常兼容处理、新增@kunlun/shared模块、submitCache使用runtimeContext进行父子组件传递、修改字段的submit方法入参、新增主题配置。后端发布内容包括修复业务审计登录记录IP空指针问题、修复工作流数据保存历史数据空指针问题、低无一体本地调试。这些更新将提升系统稳定性和开发体验。 1 发布概要 1.1 前端 发布内容: 设计器的图片字段改成OSS 修复树视图刷新 支持视图切换机制 修复返回 1.2 后端 发布内容: gql最外层统一处理客户端数据转换 翻译xml修改 修改工作流关联模型数据展示问题 修改流程设计视图关联模型的显示问题 2.最新版本包信息 <pamirs.middleware.version>3.5.7</pamirs.middleware.version> <pamirs.boot.version>4.0.3</pamirs.boot.version> <pamirs.framework.version>4.0.1</pamirs.framework.version> <pamirs.k2.version>4.0.1</pamirs.k2.version> <pamirs.core.version>4.0.3</pamirs.core.version> <pamirs.tenant.version>3.5.7</pamirs.tenant.version> <pamirs.lowcode.version>3.5.7</pamirs.lowcode.version> <pamirs.designer.version>4.0.1</pamirs.designer.version> <pamirs.workflow.designer.version>4.0.1</pamirs.workflow.designer.version> <pamirs.workflow.version>4.0.4</pamirs.workflow.version> <pamirs.workbench.version>4.0.1</pamirs.workbench.version> <pamirs.designer.common.version>3.5.7</pamirs.designer.common.version> <pamirs.model.designer.version>3.5.8</pamirs.model.designer.version> <pamirs.logic.designer.version>3.5.7</pamirs.logic.designer.version> <pamirs.ui.designer.version>4.0.6</pamirs.ui.designer.version> <pamirs.data.designer.version>3.5.7</pamirs.data.designer.version> <pamirs.data.visualization.version>3.5.7</pamirs.data.visualization.version> <pamirs.distribution.version>3.5.7</pamirs.distribution.version> <pamirs.welcome.version>3.5.7</pamirs.welcome.version> <pamirs.gemini.version>4.0.1</pamirs.gemini.version> <pamirs.paas.version>4.0.1</pamirs.paas.version> 如果您有任何问题、建议或反馈,请随时联系我们。为了获得最佳体验,建议请升级至最新版本。我们将继续努力改进产品,提供更好的服务。谢谢您的支持!

    2023年4月19日
    97400

Leave a Reply

登录后才能评论