diff --git a/README.md b/README.md index 1c25c58..e06c423 100644 --- a/README.md +++ b/README.md @@ -55,7 +55,7 @@ lock-lost callback in every critical path. The full semantics live in the guides | Java | **25** (all artifacts, `release=25`) | | Spring Boot starter | **4.x only** (Boot-4-only dependencies); Boot 3.x → assemble the SDK manually | | Wire protocol | v1 / v2 / v3 via HELLO negotiation, range `[1,3]`, no implicit compatibility | -| Artifacts | Published on **Maven Central** (`io.github.lamspace:openlatch-*`, 1.0.0+) | +| Artifacts | Client SDK chain (`openlatch-protocol` / `openlatch-client` / `openlatch-spring-boot-starter`) published on **Maven Central**, 1.0.0+; server & console executable jars on **GitHub Releases** | ## 🚀 Quick Start @@ -78,9 +78,10 @@ Add from Maven Central (`io.github.lamspace`, 1.0.0+): ``` Run a single-node server — grab the executable jar from -[Maven Central](https://repo1.maven.org/maven2/io/github/lamspace/openlatch-server/1.0.0/openlatch-server-1.0.0-executable.jar): +[GitHub Releases](https://github.com/LamSpace/OpenLatch/releases): ```bash +curl -LO https://github.com/LamSpace/OpenLatch/releases/download/v1.0.0/openlatch-server-1.0.0-executable.jar java -jar openlatch-server-1.0.0-executable.jar # listens on :9410 ``` diff --git a/README_CN.md b/README_CN.md index 2c807b9..1998dc7 100644 --- a/README_CN.md +++ b/README_CN.md @@ -53,7 +53,7 @@ Spring Boot 4 声明式注解 `@OpenLatch`、只读 Web **管理控制台**、Pr | Java | **25**(全部构件 `release=25`) | | Spring Boot starter | **仅 4.x**(依赖 Boot 4 独有构件);Boot 3.x 请手动装配 SDK | | 线路协议 | v1 / v2 / v3,HELLO 协商区间 `[1,3]`,不做隐式兼容 | -| 构件 | 已发布 **Maven Central**(`io.github.lamspace:openlatch-*`,1.0.0+) | +| 构件 | 客户端 SDK 链路(`openlatch-protocol` / `openlatch-client` / `openlatch-spring-boot-starter`)发布 **Maven Central**(1.0.0+);服务端与控制台可执行 jar 发布于 **GitHub Releases** | ## 🚀 快速上手 @@ -75,9 +75,10 @@ Spring Boot 4 声明式注解 `@OpenLatch`、只读 Web **管理控制台**、Pr ``` -单节点服务器——从 [Maven Central](https://repo1.maven.org/maven2/io/github/lamspace/openlatch-server/1.0.0/openlatch-server-1.0.0-executable.jar) 下载可执行 jar: +单节点服务器——从 [GitHub Releases](https://github.com/LamSpace/OpenLatch/releases) 下载可执行 jar: ```bash +curl -LO https://github.com/LamSpace/OpenLatch/releases/download/v1.0.0/openlatch-server-1.0.0-executable.jar java -jar openlatch-server-1.0.0-executable.jar # 监听 :9410 ``` diff --git a/docs/guide/en/02-quickstart.md b/docs/guide/en/02-quickstart.md index de9a491..b756051 100644 --- a/docs/guide/en/02-quickstart.md +++ b/docs/guide/en/02-quickstart.md @@ -7,7 +7,15 @@ Prereq: Java 25, Maven. ### 1. Get the artifacts -Before Central publication, build and install locally: +The client SDK resolves from Maven Central (coordinates in step 3). For the server, +grab the executable jar from +[GitHub Releases](https://github.com/LamSpace/OpenLatch/releases): + +```bash +curl -LO https://github.com/LamSpace/OpenLatch/releases/download/v1.0.0/openlatch-server-1.0.0-executable.jar +``` + +…or build from source instead (Path B below writes the `target/` layout): ```bash git clone https://github.com/LamSpace/OpenLatch.git && cd OpenLatch @@ -17,7 +25,8 @@ mvn clean install -DskipTests ### 2. Start the server ```bash -java -jar openlatch-server/target/openlatch-server-1.0.0-executable.jar +java -jar openlatch-server-1.0.0-executable.jar +# (built from source instead: openlatch-server/target/openlatch-server-1.0.0-executable.jar) # log confirms: OpenLatch server started: port=9410, ... metricsPort=9412 ``` diff --git a/docs/guide/en/07-admin-console.md b/docs/guide/en/07-admin-console.md index d20e99a..a26bf46 100644 --- a/docs/guide/en/07-admin-console.md +++ b/docs/guide/en/07-admin-console.md @@ -8,11 +8,17 @@ detail pages show lock-table entries, wait queues and session footprints. ## Deployment +Grab the executable jar from +[GitHub Releases](https://github.com/LamSpace/OpenLatch/releases), then: + ```bash java -Dopenlatch.console.config=/path/to/console.properties \ - -jar openlatch-console/target/openlatch-console-1.0.0-executable.jar + -jar openlatch-console-1.0.0-executable.jar ``` +(If you built from source instead, the jar is at +`openlatch-console/target/openlatch-console-1.0.0-executable.jar`.) + Co-locating with observed nodes is fine (separate process). Template: `openlatch-console/console.properties.example` in the repo. diff --git a/docs/guide/en/10-compatibility.md b/docs/guide/en/10-compatibility.md index 0bb9d48..10ef497 100644 --- a/docs/guide/en/10-compatibility.md +++ b/docs/guide/en/10-compatibility.md @@ -9,7 +9,7 @@ | Spring Framework | whatever Boot 4 ships (Framework 7) | starter targets Boot 4 contexts only | | Wire protocol | servers accept **v1 / v2 / v3 / v4 / v5** (HELLO negotiation, range [1,5]) | out-of-range rejected at handshake — no implicit compatibility | | Micrometer | host-provided (not transitive) | inject a `MeterRegistry` to enable client metrics | -| Maven Central | published (1.0.0+) | use `io.github.lamspace:openlatch-*` coordinates directly, or build locally | +| Artifact delivery | client SDK chain (`openlatch-protocol` / `openlatch-client` / `openlatch-spring-boot-starter`) published on Maven Central (1.0.0+); server & console executable jars on GitHub Releases | client: use the coordinates directly; server/console: download a jar or build locally | ## Protocol capabilities by version diff --git a/docs/guide/zh/02-quickstart.md b/docs/guide/zh/02-quickstart.md index 2afdec1..0b83eac 100644 --- a/docs/guide/zh/02-quickstart.md +++ b/docs/guide/zh/02-quickstart.md @@ -6,7 +6,14 @@ ### 1. 取构件 -中央仓库发布前,本地构建安装: +客户端 SDK 按 Maven Central 坐标引入(见第 3 步)。服务器可执行 jar 从 +[GitHub Releases](https://github.com/LamSpace/OpenLatch/releases) 下载: + +```bash +curl -LO https://github.com/LamSpace/OpenLatch/releases/download/v1.0.0/openlatch-server-1.0.0-executable.jar +``` + +……或改为本地源码构建(下文路径 B 的命令按 `target/` 布局书写): ```bash git clone https://github.com/LamSpace/OpenLatch.git && cd OpenLatch @@ -16,7 +23,8 @@ mvn clean install -DskipTests ### 2. 启动服务器 ```bash -java -jar openlatch-server/target/openlatch-server-1.0.0-executable.jar +java -jar openlatch-server-1.0.0-executable.jar +# (源码构建则位于 openlatch-server/target/openlatch-server-1.0.0-executable.jar) # 日志确认:OpenLatch server started: port=9410, ... metricsPort=9412 ``` diff --git a/docs/guide/zh/07-admin-console.md b/docs/guide/zh/07-admin-console.md index c09584b..1c7f599 100644 --- a/docs/guide/zh/07-admin-console.md +++ b/docs/guide/zh/07-admin-console.md @@ -7,11 +7,16 @@ ## 部署 +可执行 jar 从 [GitHub Releases](https://github.com/LamSpace/OpenLatch/releases) 下载,然后: + ```bash java -Dopenlatch.console.config=/path/to/console.properties \ - -jar openlatch-console/target/openlatch-console-1.0.0-executable.jar + -jar openlatch-console-1.0.0-executable.jar ``` +(本地源码构建则位于 +`openlatch-console/target/openlatch-console-1.0.0-executable.jar`。) + 与控制端同机部署的被观察节点也完全兼容(不同进程即可)。配置模板见仓库 `openlatch-console/console.properties.example`。 diff --git a/docs/guide/zh/10-compatibility.md b/docs/guide/zh/10-compatibility.md index cb2893e..128022d 100644 --- a/docs/guide/zh/10-compatibility.md +++ b/docs/guide/zh/10-compatibility.md @@ -9,7 +9,7 @@ | Spring Framework | 随 Boot 4(Framework 7) | starter 仅面向 Boot 4 应用上下文 | | 线路协议 | 服务端接受 **v1 / v2 / v3 / v4 / v5**(HELLO 协商,支持区间 [1,5]) | 区间外拒绝,不做隐式兼容 | | Micrometer | 宿主自备(不传递) | 注入 `MeterRegistry` 即启用客户端指标 | -| 中央仓库 | 已发布(1.0.0+) | 直接按 `io.github.lamspace:openlatch-*` 坐标使用,或本地构建 | +| 构件分发 | 客户端 SDK 链路(`openlatch-protocol` / `openlatch-client` / `openlatch-spring-boot-starter`)发布 Maven Central(1.0.0+);服务端与控制台可执行 jar 发布于 GitHub Releases | 客户端按坐标直接引入;服务端/控制台从 Releases 下载或本地构建 | ## 协议能力随版本累积 diff --git a/pom.xml b/pom.xml index 14028f3..0ab4c4c 100644 --- a/pom.xml +++ b/pom.xml @@ -234,8 +234,14 @@ default build (the javadoc jar is already produced and attached by build/plugins), then uploads via the Sonatype Central Portal. Publishing requires a `central` server entry in the active settings.xml (User Token) and an interactive GPG passphrase - prompt. openlatch-examples is excluded from the bundle via excludeArtifacts — - maven.deploy.skip is NOT honored by central-publishing-maven-plugin. --> + prompt. Publish scope is the client SDK chain only — the parent pom plus + openlatch-protocol, openlatch-client and openlatch-spring-boot-starter, i.e. exactly + the artifacts external consumers resolve by coordinates. The server and the console + are applications, distributed as executable jars attached to GitHub Releases, and + openlatch-core is excluded together with the server (no published artifact depends + on it); all three are kept out of the bundle via excludeArtifacts — maven.deploy.skip + is NOT honored by central-publishing-maven-plugin (same mechanism excludes the + never-published openlatch-examples). --> release @@ -283,6 +289,9 @@ false openlatch-examples + openlatch-core + openlatch-server + openlatch-console