【AI开源大模型工具链ModelEngine】【01】应用框架-源码编译运行

ModelEngine提供从数据处理、知识生成,到模型微调和部署,以及RAG(Retrieval Augmented Generation)应用开发的AI训推全流程工具链。

这篇文章从 ModelEngine编译环境构建开始验证,逐步介绍如何使用开源的 ModelEngine

Step1: 事前准备

  • 操作系统:MacOS

    (base) liumiao@liumiaodeMacBook-Pro modelengine % sw_vers
    ProductName: macOS
    ProductVersion: 15.3.2
    BuildVersion: 24D81
    (base) liumiao@liumiaodeMacBook-Pro modelengine %

  • 安装brew

    (base) liumiao@liumiaodeMacBook-Pro modelengine % brew --version
    Homebrew 4.4.25
    (base) liumiao@liumiaodeMacBook-Pro modelengine %

  • 安装jdk17

    (base) liumiao@liumiaodeMacBook-Pro modelengine % brew install openjdk@17
    ==> Fetching dependencies for openjdk@17: glib, harfbuzz and xz
    ==> Fetching glib
    ...
    ==> openjdk@17
    For the system Java wrappers to find this JDK, symlink it with
    sudo ln -sfn /usr/local/opt/openjdk@17/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-17.jdk

    openjdk@17 is keg-only, which means it was not symlinked into /usr/local,
    because this is an alternate version of another formula.

    If you need to have openjdk@17 first in your PATH, run:
    echo 'export PATH="/usr/local/opt/openjdk@17/bin:$PATH"' >> ~/.zshrc

    For compilers to find openjdk@17 you may need to set:
    export CPPFLAGS="-I/usr/local/opt/openjdk@17/include"
    (base) liumiao@liumiaodeMacBook-Pro modelengine %

配置zshrc文件,并确认java版本

复制代码
(base) liumiao@liumiaodeMacBook-Pro modelengine % echo 'export PATH="/usr/local/opt/openjdk@17/bin:$PATH"' >> ~/.zshrc
(base) liumiao@liumiaodeMacBook-Pro modelengine % source ~/.zshrc
(base) liumiao@liumiaodeMacBook-Pro modelengine % java --version
openjdk 17.0.14 2025-01-21
OpenJDK Runtime Environment Homebrew (build 17.0.14+0)
OpenJDK 64-Bit Server VM Homebrew (build 17.0.14+0, mixed mode, sharing)
(base) liumiao@liumiaodeMacBook-Pro modelengine % 
  • 安装maven(3.9.9)

    liumiaodeMacBook-Pro:local root# pwd
    /usr/local
    liumiaodeMacBook-Pro:local root# curl https://dlcdn.apache.org/maven/maven-3/3.9.9/binaries/apache-maven-3.9.9-bin.tar.gz -o maven3.9.9.tar.gz
    % Total % Received % Xferd Average Speed Time Time Time Current
    Dload Upload Total Spent Left Speed
    100 8889k 100 8889k 0 0 2684k 0 0:00:03 0:00:03 --:--:-- 2684k
    liumiaodeMacBook-Pro:local root# tar xvpf maven3.9.9.tar.gz
    x apache-maven-3.9.9/README.txt
    ...

环境变量配置与mvn命令行确认

复制代码
(base) liumiao@liumiaodeMacBook-Pro local % vi ~/.zshrc
(base) liumiao@liumiaodeMacBook-Pro local % tail -n2 ~/.zshrc
export M2_HOME=/usr/local/apache-maven-3.9.9
export PATH=$M2_HOME/bin:$PATH
(base) liumiao@liumiaodeMacBook-Pro local % source ~/.zshrc
(base) liumiao@liumiaodeMacBook-Pro local % mvn --version
Apache Maven 3.9.9 (8e8579a9e76f7d015ee5ec7bfcdc97d260186937)
Maven home: /usr/local/apache-maven-3.9.9
Java version: 17.0.14, vendor: Homebrew, runtime: /usr/local/Cellar/openjdk@17/17.0.14/libexec/openjdk.jdk/Contents/Home
Default locale: zh_CN_#Hans, platform encoding: UTF-8
OS name: "mac os x", version: "15.3.2", arch: "x86_64", family: "mac"
(base) liumiao@liumiaodeMacBook-Pro local % 

Step 2: 构建

  • 构建命令:mvn clean install

    (base) liumiao@liumiaodeMacBook-Pro modelengine % ls
    agent app-platform doc fit-framework
    (base) liumiao@liumiaodeMacBook-Pro modelengine % cd fit-framework
    (base) liumiao@liumiaodeMacBook-Pro fit-framework % ls
    CONTRIBUTING.md examples
    CodeFormatterFromIdea.xml framework
    License.txt git-hooks
    README.md pom.xml
    docs
    (base) liumiao@liumiaodeMacBook-Pro fit-framework % mvn clean install
    [INFO] Scanning for projects...
    Downloading from central: https://repo.maven.apache.org/maven2/org/springframework/boot/spring-boot-starter-parent/3.4.2/spring-boot-starter-parent-3.4.2.pom
    ...
    [INFO] Reactor Summary:
    [INFO]
    [INFO] fitframework-parent 3.6.0-SNAPSHOT ................. SUCCESS [ 0.915 s]
    [INFO] fit-protocol-nestable-jar 3.6.0-SNAPSHOT ........... SUCCESS [ 7.835 s]
    [INFO] fit-maven-plugin 3.6.0-SNAPSHOT .................... SUCCESS [ 0.009 s]
    [INFO] fit-dependency-maven-plugin 3.6.0-SNAPSHOT ......... SUCCESS [ 19.448 s]
    [INFO] fit-util 3.6.0-SNAPSHOT ............................ SUCCESS [ 23.764 s]
    [INFO] fit-api 3.6.0-SNAPSHOT ............................. SUCCESS [ 9.935 s]
    [INFO] fit-conf-parent 3.6.0-SNAPSHOT ..................... SUCCESS [ 0.008 s]
    [INFO] fit-conf 3.6.0-SNAPSHOT ............................ SUCCESS [ 3.986 s]
    [INFO] fit-ioc-parent 3.6.0-SNAPSHOT ...................... SUCCESS [ 0.008 s]
    [INFO] fit-ioc 3.6.0-SNAPSHOT ............................. SUCCESS [ 7.981 s]
    [INFO] fit-aop-parent 3.6.0-SNAPSHOT ...................... SUCCESS [ 0.005 s]
    [INFO] fit-aop 3.6.0-SNAPSHOT ............................. SUCCESS [ 5.086 s]
    [INFO] fit-plugin 3.6.0-SNAPSHOT .......................... SUCCESS [ 4.074 s]
    [INFO] fit-reactor 3.6.0-SNAPSHOT ......................... SUCCESS [ 3.674 s]
    [INFO] fit-builtin-parent 3.6.0-SNAPSHOT .................. SUCCESS [ 0.005 s]
    [INFO] fit-maven-plugin-util 3.6.0-SNAPSHOT ............... SUCCESS [ 2.000 s]
    [INFO] fit-build-maven-plugin 3.6.0-SNAPSHOT .............. SUCCESS [ 6.143 s]
    [INFO] fit-service-parent 3.6.0-SNAPSHOT .................. SUCCESS [ 0.022 s]
    [INFO] fit-http-protocol-parent 3.6.0-SNAPSHOT ............ SUCCESS [ 0.005 s]
    [INFO] fit-http-protocol 3.6.0-SNAPSHOT ................... SUCCESS [ 3.758 s]
    [INFO] fit-http-classic-parent 3.6.0-SNAPSHOT ............. SUCCESS [ 0.005 s]
    [INFO] fit-http-classic 3.6.0-SNAPSHOT .................... SUCCESS [ 11.581 s]
    [INFO] fit-message-serializer-parent 3.6.0-SNAPSHOT ....... SUCCESS [ 0.006 s]
    [INFO] fit-message-serializer 3.6.0-SNAPSHOT .............. SUCCESS [ 2.288 s]
    [INFO] fit-server-parent 3.6.0-SNAPSHOT ................... SUCCESS [ 0.005 s]
    [INFO] fit-server 3.6.0-SNAPSHOT .......................... SUCCESS [ 1.039 s]
    [INFO] fit-service-registry-and-discovery-parent 3.6.0-SNAPSHOT SUCCESS [ 0.006 s]
    [INFO] fit-service-registry-and-discovery 3.6.0-SNAPSHOT .. SUCCESS [ 1.601 s]
    [INFO] fit-client-parent 3.6.0-SNAPSHOT ................... SUCCESS [ 0.005 s]
    [INFO] fit-client 3.6.0-SNAPSHOT .......................... SUCCESS [ 1.293 s]
    [INFO] fit-broker 3.6.0-SNAPSHOT .......................... SUCCESS [ 19.414 s]
    [INFO] fit-conf-yaml 3.6.0-SNAPSHOT ....................... SUCCESS [ 3.997 s]
    [INFO] fit-runtime 3.6.0-SNAPSHOT ......................... SUCCESS [ 4.406 s]
    [INFO] fit-log-parent 3.6.0-SNAPSHOT ...................... SUCCESS [ 0.004 s]
    [INFO] fit-log-console 3.6.0-SNAPSHOT ..................... SUCCESS [ 3.590 s]
    [INFO] fit-starter-parent 3.6.0-SNAPSHOT .................. SUCCESS [ 0.004 s]
    [INFO] fit-starter 3.6.0-SNAPSHOT ......................... SUCCESS [ 0.016 s]
    [INFO] fit-plugin-parent 3.6.0-SNAPSHOT ................... SUCCESS [ 0.010 s]
    [INFO] fit-http-handler-registry 3.6.0-SNAPSHOT ........... SUCCESS [ 6.390 s]
    [INFO] fit-server-http 3.6.0-SNAPSHOT ..................... SUCCESS [ 2.449 s]
    [INFO] fit-security-parent 3.6.0-SNAPSHOT ................. SUCCESS [ 0.004 s]
    [INFO] fit-security 3.6.0-SNAPSHOT ........................ SUCCESS [ 4.310 s]
    [INFO] fit-http-server-netty 3.6.0-SNAPSHOT ............... SUCCESS [ 13.010 s]
    [INFO] fit-test-parent 3.6.0-SNAPSHOT ..................... SUCCESS [ 0.004 s]
    [INFO] fit-service-test-util 3.6.0-SNAPSHOT ............... SUCCESS [ 1.109 s]
    [INFO] fit-message-serializer-test 3.6.0-SNAPSHOT ......... SUCCESS [ 1.333 s]
    [INFO] fit-value-fastjson 3.6.0-SNAPSHOT .................. SUCCESS [ 2.977 s]
    [INFO] fit-message-serializer-json-jackson 3.6.0-SNAPSHOT . SUCCESS [ 4.017 s]
    [INFO] fit-starter-web 3.6.0-SNAPSHOT ..................... SUCCESS [ 0.004 s]
    [INFO] fit-plugins-starter-web 3.6.0-SNAPSHOT ............. SUCCESS [ 0.017 s]
    [INFO] fit-http-client-okhttp 3.6.0-SNAPSHOT .............. SUCCESS [ 6.091 s]
    [INFO] fel-parent 1.0.0-SNAPSHOT .......................... SUCCESS [ 0.128 s]
    [INFO] fel-core 1.0.0-SNAPSHOT ............................ SUCCESS [ 7.477 s]
    [INFO] fel-community-parent 1.0.0-SNAPSHOT ................ SUCCESS [ 0.003 s]
    [INFO] fel-model-openai-plugin 1.0.0-SNAPSHOT ............. SUCCESS [ 2.352 s]
    [INFO] fel-example-parent 1.0.0-SNAPSHOT .................. SUCCESS [ 0.003 s]
    [INFO] chat-model-example 1.0.0-SNAPSHOT .................. SUCCESS [ 5.044 s]
    [INFO] chat-template-example 1.0.0-SNAPSHOT ............... SUCCESS [ 0.537 s]
    [INFO] chat-memory-example 1.0.0-SNAPSHOT ................. SUCCESS [ 0.527 s]
    [INFO] output-parser-example 1.0.0-SNAPSHOT ............... SUCCESS [ 0.527 s]
    [INFO] fel-services-parent 1.0.0-SNAPSHOT ................. SUCCESS [ 0.003 s]
    [INFO] tool-service 1.0.0-SNAPSHOT ........................ SUCCESS [ 7.615 s]
    [INFO] waterflow-parent 1.0.0-SNAPSHOT .................... SUCCESS [ 0.004 s]
    [INFO] waterflow-genericable 1.0.0-SNAPSHOT ............... SUCCESS [ 0.054 s]
    [INFO] waterflow-core 1.0.0-SNAPSHOT ...................... SUCCESS [ 20.682 s]
    [INFO] waterflow-bridge-fit-reactor 1.0.0-SNAPSHOT ........ SUCCESS [ 2.571 s]
    [INFO] fel-flow 1.0.0-SNAPSHOT ............................ SUCCESS [ 3.559 s]
    [INFO] retrieval-example 1.0.0-SNAPSHOT ................... SUCCESS [ 0.618 s]
    [INFO] fel-plugin-parent 1.0.0-SNAPSHOT ................... SUCCESS [ 0.003 s]
    [INFO] fel-tool-discoverer 1.0.0-SNAPSHOT ................. SUCCESS [ 3.391 s]
    [INFO] fel-tool-executor 1.0.0-SNAPSHOT ................... SUCCESS [ 3.569 s]
    [INFO] fel-tool-factory-repository 1.0.0-SNAPSHOT ......... SUCCESS [ 0.110 s]
    [INFO] fel-tool-repository-simple 1.0.0-SNAPSHOT .......... SUCCESS [ 0.103 s]
    [INFO] fel-maven-plugin-parent 1.0.0-SNAPSHOT ............. SUCCESS [ 0.003 s]
    [INFO] tool-maven-plugin 1.0.0-SNAPSHOT ................... SUCCESS [ 3.266 s]
    [INFO] agent-example 1.0.0-SNAPSHOT ....................... SUCCESS [ 0.864 s]
    [INFO] simple-web-app 1.0-SNAPSHOT ........................ SUCCESS [ 0.475 s]
    [INFO] weather-for-static 1.0-SNAPSHOT .................... SUCCESS [ 0.026 s]
    [INFO] default-weather-for-static 1.0-SNAPSHOT ............ SUCCESS [ 0.042 s]
    [INFO] assistant-for-static 1.0-SNAPSHOT .................. SUCCESS [ 0.498 s]
    [INFO] other-weather-for-static 1.0-SNAPSHOT .............. SUCCESS [ 0.040 s]
    [INFO] static-plugin 1.0-SNAPSHOT ......................... SUCCESS [ 0.003 s]
    [INFO] fit-services-starter-web 3.6.0-SNAPSHOT ............ SUCCESS [ 0.012 s]
    [INFO] weather-for-dynamic 1.0-SNAPSHOT ................... SUCCESS [ 0.027 s]
    [INFO] assistant-for-dynamic 1.0-SNAPSHOT ................. SUCCESS [ 0.059 s]
    [INFO] default-weather-for-dynamic 1.0-SNAPSHOT ........... SUCCESS [ 0.039 s]
    [INFO] other-weather-for-dynamic 1.0-SNAPSHOT ............. SUCCESS [ 0.038 s]
    [INFO] dynamic-plugin 1.0-SNAPSHOT ........................ SUCCESS [ 0.002 s]
    [INFO] weather-for-complicated 1.0-SNAPSHOT ............... SUCCESS [ 0.029 s]
    [INFO] fit-client-http 3.6.0-SNAPSHOT ..................... SUCCESS [ 4.374 s]
    [INFO] fit-heartbeat-parent 3.6.0-SNAPSHOT ................ SUCCESS [ 0.005 s]
    [INFO] fit-heartbeat 3.6.0-SNAPSHOT ....................... SUCCESS [ 1.075 s]
    [INFO] fit-heartbeat-client 3.6.0-SNAPSHOT ................ SUCCESS [ 3.959 s]
    [INFO] fit-service-registry 3.6.0-SNAPSHOT ................ SUCCESS [ 7.452 s]
    [INFO] fit-service-discovery 3.6.0-SNAPSHOT ............... SUCCESS [ 4.245 s]
    [INFO] fit-service-coordination-locator 3.6.0-SNAPSHOT .... SUCCESS [ 1.147 s]
    [INFO] assistant-for-complicated 1.0-SNAPSHOT ............. SUCCESS [ 0.511 s]
    [INFO] default-weather-for-complicated 1.0-SNAPSHOT ....... SUCCESS [ 0.546 s]
    [INFO] fit-service-coordination-simple 3.6.0-SNAPSHOT ..... SUCCESS [ 3.695 s]
    [INFO] registry-center-for-complicated 1.0-SNAPSHOT ....... SUCCESS [ 0.499 s]
    [INFO] complicated-apps 1.0-SNAPSHOT ...................... SUCCESS [ 0.003 s]
    [INFO] aop-log 1.0-SNAPSHOT ............................... SUCCESS [ 0.003 s]
    [INFO] aop-log-plugins 1.0-SNAPSHOT ....................... SUCCESS [ 0.002 s]
    [INFO] plugin-simple-mvc 1.0-SNAPSHOT ..................... SUCCESS [ 0.067 s]
    [INFO] plugin-log 1.0-SNAPSHOT ............................ SUCCESS [ 0.039 s]
    [INFO] fit-aop-bytebuddy 3.6.0-SNAPSHOT ................... SUCCESS [ 3.705 s]
    [INFO] fit-dynamic-plugin-directory 3.6.0-SNAPSHOT ........ SUCCESS [ 1.171 s]
    [INFO] fit-spring-boot-starter 3.6.0-SNAPSHOT ............. SUCCESS [ 13.361 s]
    [INFO] weather-for-spring 1.0-SNAPSHOT .................... SUCCESS [ 0.037 s]
    [INFO] demo-spring-app 1.0-SNAPSHOT ....................... SUCCESS [ 9.785 s]
    [INFO] default-weather-for-spring 1.0-SNAPSHOT ............ SUCCESS [ 0.041 s]
    [INFO] spring-boot-starter 1.0-SNAPSHOT ................... SUCCESS [ 0.003 s]
    [INFO] fit-example-parent 1.0.0-SNAPSHOT .................. SUCCESS [ 0.002 s]
    [INFO] parent 1.0.0-SNAPSHOT .............................. SUCCESS [ 0.005 s]
    [INFO] example-parent 1.0.0-SNAPSHOT ...................... SUCCESS [ 0.003 s]
    [INFO] fit-aop-aspect 3.6.0-SNAPSHOT ...................... SUCCESS [ 5.800 s]
    [INFO] fit-actuator 3.6.0-SNAPSHOT ........................ SUCCESS [ 4.348 s]
    [INFO] fit-dynamic-plugin-mvn 3.6.0-SNAPSHOT .............. SUCCESS [ 1.240 s]
    [INFO] fit-http-openapi3-swagger 3.6.0-SNAPSHOT ........... SUCCESS [ 4.620 s]
    [INFO] fit-logger 3.6.0-SNAPSHOT .......................... SUCCESS [ 2.353 s]
    [INFO] fit-message-serializer-cbor 3.6.0-SNAPSHOT ......... SUCCESS [ 3.162 s]
    [INFO] fit-data-repository-service-parent 3.6.0-SNAPSHOT .. SUCCESS [ 0.005 s]
    [INFO] fit-data-repository-service 3.6.0-SNAPSHOT ......... SUCCESS [ 1.295 s]
    [INFO] fit-dependency 3.6.0-SNAPSHOT ...................... SUCCESS [ 0.004 s]
    [INFO] fit-extension-parent 3.6.0-SNAPSHOT ................ SUCCESS [ 0.004 s]
    [INFO] fit-retry 3.6.0-SNAPSHOT ........................... SUCCESS [ 4.367 s]
    [INFO] fit-schedule 3.6.0-SNAPSHOT ........................ SUCCESS [ 1.167 s]
    [INFO] fit-transaction 3.6.0-SNAPSHOT ..................... SUCCESS [ 7.365 s]
    [INFO] fit-test-framework 3.6.0-SNAPSHOT .................. SUCCESS [ 7.947 s]
    [INFO] fit-validation 3.6.0-SNAPSHOT ...................... SUCCESS [ 8.582 s]
    [INFO] fit-validation-hibernate 3.6.0-SNAPSHOT ............ SUCCESS [ 6.101 s]
    [INFO] fit-discrete-launcher 3.6.0-SNAPSHOT ............... SUCCESS [ 1.489 s]
    [INFO] fit-log-log4j2 3.6.0-SNAPSHOT ...................... SUCCESS [ 1.383 s]
    [INFO] fit-http-starter 3.6.0-SNAPSHOT .................... SUCCESS [ 0.026 s]
    [INFO] integration-parent 3.6.0-SNAPSHOT .................. SUCCESS [ 0.005 s]
    [INFO] fit-druid 3.6.0-SNAPSHOT ........................... SUCCESS [ 5.808 s]
    [INFO] fit-mybatis-common 3.6.0-SNAPSHOT .................. SUCCESS [ 4.647 s]
    [INFO] fit-mybatis 3.6.0-SNAPSHOT ......................... SUCCESS [ 4.651 s]
    [INFO] jacoco-aggregator 3.6.0-SNAPSHOT ................... SUCCESS [ 2.750 s]
    [INFO] OhScript 0.0.3.6-SNAPSHOT .......................... SUCCESS [ 27.548 s]
    [INFO] waterflow-dependency 1.0.0-SNAPSHOT ................ SUCCESS [ 0.005 s]
    [INFO] framework-parent 1.0.0-SNAPSHOT .................... SUCCESS [ 0.007 s]
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 06:57 min
    [INFO] Finished at: 2025-04-08T16:50:32+08:00
    [INFO] ------------------------------------------------------------------------
    (base) liumiao@liumiaodeMacBook-Pro fit-framework %

  • 代码总量

    (base) liumiao@liumiaodeMacBook-Pro fit-framework % pwd
    /Users/liumiao/liumiaocn/modelengine/fit-framework
    (base) liumiao@liumiaodeMacBook-Pro fit-framework % cloc .
    17356 text files.
    15877 unique files.
    6525 files ignored.

    github.com/AlDanial/cloc v 2.04 T=15.20 s (1044.6 files/s, 93579.1 lines/s)

    Language files blank comment code

    HTML 8898 15435 24878 890079
    Java 2746 29536 79718 147654
    XML 1450 18 17 89051
    JavaScript 411 5092 10004 36985
    JSX 255 2276 6542 18723
    Markdown 96 4853 50 16701
    Text 1439 9 0 9456
    Python 140 2929 2978 9044
    Maven 142 754 294 8740
    CSS 37 470 252 3443
    CSV 2 0 0 1784
    JSON 20 1 0 1781
    SVG 72 0 0 1175
    YAML 56 32 23 1050
    Properties 107 0 4 349
    Bourne Again Shell 1 9 8 57
    Bourne Shell 2 9 6 29
    SQL 1 0 0 7
    DOS Batch 1 0 0 2
    DTD 1 0 0 2

    SUM: 15877 61423 124774 1236112

    (base) liumiao@liumiaodeMacBook-Pro fit-framework %

Step 3: 运行验证

设定可执行文件权限

复制代码
(base) liumiao@liumiaodeMacBook-Pro fit-framework % cd framework/fit/java/target
(base) liumiao@liumiaodeMacBook-Pro target % ls
bin
conf
fit-discrete-launcher-3.6.0-SNAPSHOT.jar
lib
plugins
shared
third-party
(base) liumiao@liumiaodeMacBook-Pro target % chmod 755 bin/fit
(base) liumiao@liumiaodeMacBook-Pro target %

执行并确认结果输出

复制代码
(base) liumiao@liumiaodeMacBook-Pro target % cd bin
(base) liumiao@liumiaodeMacBook-Pro bin % ls
fit	fit.bat
(base) liumiao@liumiaodeMacBook-Pro bin % ./fit start
Running command: java -D"sun.io.useCanonCaches=true" -D"plugin.fit.dynamic.plugin.directory=/Users/liumiao/liumiaocn/modelengine/fit-framework/framework/fit/java/target/bin" -jar fit-discrete-launcher-3.6.0-SNAPSHOT.jar
[2025-04-08 23:42:01.139] [INFO ] [main] [modelengine.fitframework.runtime.discrete.DiscreteFitRuntime] Prepare to start FIT application... [version=3.6.0-SNAPSHOT]
[2025-04-08 23:42:04.169] [INFO ] [main] [modelengine.fel.tool.support.DefaultToolFactoryRepository] Register factory[type=FIT] success.
[2025-04-08 23:42:04.171] [INFO ] [main] [modelengine.fel.tool.support.DefaultToolFactoryRepository] Register factory[type=HTTP] success.
[2025-04-08 23:42:04.702] [INFO ] [main] [modelengine.fit.http.server.handler.ReflectibleHttpHandlerRegistry] Register http handler group successfully. [group=modelengine.fit.actuator.ActuatorController]
[2025-04-08 23:42:04.944] [INFO ] [main] [modelengine.fit.http.server.handler.ReflectibleHttpHandlerRegistry] Register http handler group successfully. [group=modelengine.fit.http.openapi3.swagger.DocumentController]
[2025-04-08 23:42:05.085] [INFO ] [main] [modelengine.fit.http.server.handler.ReflectibleHttpHandlerRegistry] Register http handler group successfully. [group=modelengine.fit.service.RegistryListener]
[2025-04-08 23:42:05.095] [INFO ] [main] [modelengine.fit.http.server.handler.ReflectibleHttpHandlerRegistry] Register http handler group successfully. [group=modelengine.fit.http.server.handler.StaticResourceHttpHandler]
[2025-04-08 23:42:05.096] [INFO ] [main] [modelengine.fit.http.server.handler.ReflectibleHttpHandlerRegistry] Register http handler group successfully. [group=modelengine.fit.http.server.handler.OptionsHttpHandler]
[2025-04-08 23:42:05.144] [INFO ] [main] [modelengine.fit.http.server.handler.ReflectibleHttpHandlerRegistry] Register http handler group successfully. [group=modelengine.fit.log.LoggerController]
[2025-04-08 23:42:05.182] [INFO ] [main] [modelengine.fit.http.server.handler.ReflectibleHttpHandlerRegistry] Register http handler group successfully. [group=modelengine.fit.service.CheckController]
[2025-04-08 23:42:05.384] [INFO ] [main] [modelengine.fitframework.runtime.discrete.DiscreteFitRuntime] FIT application started. [version=3.6.0-SNAPSHOT]
[2025-04-08 23:42:05.404] [INFO ] [registry-client-thread-0] [modelengine.fit.service.RegistryClient] Register fitables successfully. All fitable services are ready.
[2025-04-08 23:42:05.723] [INFO ] [netty-http-server-thread-0] [modelengine.fit.http.server.netty.NettyHttpClassicServer] Start netty http server successfully. [httpPort=8080]

总结

依赖为java17+ (LTS的Java 17和21),maven版本3.8.8以上,14万行框架代码(含测试用例)全部跑完大概7分钟。