使用官方提供的Maven插件sofa-ark-maven-plugin可以将工程应用打包成一个标准格式的Ark 包;使用命令java -jar application.jar即可在 Ark 容器之上启动应用;Ark 包通常包含Ark Container、Ark Plugin、Ark Biz;以下我们针对这三个概念简单做下名词解释:
配置sofa-ark-maven-plugin打包插件。 引入sofa-ark-springboot-starter类隔离框架依赖。 配置Maven 打包插件 SOFAArk 默认提供了 Maven 插件 sofa-ark-maven-plugin,您只需通过简单的配置,即可将 SpringBoot 工程打包成标准格式规范的可执行 Ark 包,插件坐标为: <plugin> <groupId>com.alipay.sofa</groupId> <a...
sofa.middleware.log.com.alipay.sofa.ark.console.level:配合sofa.middleware.log.com.alipay.sofa.ark.console配置项使用。如果打印在 console,此项项用于配置 SOFAArk 容器打印在 console 的日志级别。 插件配置 ark.plugin.active.include:指定激活哪些插件,多个插件使用英文逗号(,)分隔。默认激活 Ark 包中所有的...
tutorial-sofa-ark-maven-plugin-1.0.0-SNAPSHOT-ark-biz.jar :这个 jar 包称之为 Ark Biz 包,因为 SOFAArk 容器是支持运行多个 Ark Biz 的,所以打成这种包是为了和别的项目一起合并部署使用,另外 Ark 包里也包含了这个。 tutorial-sofa-ark-maven-plugin-1.0.0-SNAPSHOT-ark-executable.jar :这个 jar ...
SOFAArk 目前拥有两种打包插件,分别为 sofa-ark-maven-plugin 和 sofa-ark-plugin-maven-plugin。前者负责将普通的 Java 工程或者 SpringBoot 工程打包成标准格式的 Ark 包或者 Ark Biz 包,后者是将一个或者多个普通的 jar 包打包成标准格式的 Ark Plugin。这三类 jar 包都有自己特定的格式和内容。具体的内容可...
SOFAArk是蚂蚁金服开源的一款轻量级类隔离框架,主要用于类隔离和应用合并部署。以下是关于SOFAArk的详细概述及源码解析的要点:一、SOFAArk概述 定义与用途:SOFAArk是蚂蚁金服自主研发的轻量级类隔离框架,旨在解决类隔离和应用合并部署的问题。核心产品:SOFAArk Biz的打包插件sofaarkmavenplugin是理解Biz包...
Ark Container: Ark 容器,负责整个运行时的管理;Ark Plugin和Ark Biz运行在 Ark 容器之上;容器具备管理多插件、多应用的功能;容器启动成功后,会自动解析 classpath 包含的Ark Plugin和Ark Biz依赖,完成隔离加载并按优先级依次启动之; Ark Plugin: Ark 插件,满足特定目录格式要求的Fat Jar,使用官方提供的Maven插件s...
tutorial-sofa-ark-maven-plugin-1.0.0-SNAPSHOT-ark-executable.jar :这个 jar 包称之为 Ark 包,从字面上来看它是一个可执行的 jar 包,即意味着它是一个可以用 java-jar 命令来单独运行的 Fat Jar,类似于我们用 Spring Boot 插件打出来的包。
● sofa-ark-maven-plugin: 如果基座中没有被瘦身的依赖,那么直接构建报错。 此外增加字段: ○ buildFailWhenExcludeBaseDependencyWithDiffVersion (检查被瘦身的包的版本是否和基座运行时版本一致) ■ false(默认) -> 如果不一致,就构建报错,但不会构建失败; ...
(1)将 ark container 启动起来 (2)让 ark container 加载 ark-plugin 和 ark-biz isSofaArkStarted ark 是否已经启动 实现如下: remain() 实现如下: 作用: 获取classpath下的所有jar包,包括jdk自己的jar包和maven引入的jar包。 将所有依赖jar包和自己写的启动类及其main函数以url的形式传入ClasspathLauncher,Cla...