使用文档
私有部署

Jar 部署

使用 Java 25 运行私有服务,正确设置工作目录与端口

前置条件

Jar 部署需要 Java 25。先运行 java -version,应显示 Java 25;仅有 Java 8/11/17/21 不能作为本教程的运行环境

Jarv1.4.5

私有服务 Jar

password-xl-service-1.4.5.jar

25.2 MiBJava 252026-09-02
下载 Jar
SHA-256 校验值b15e558e8b1764044ca13089081748546bc829063d0aa0777b32193d51138108

从下载卡片取得 Jar,校验 SHA-256。以下示例中的 Jar 文件名请与实际下载一致。用普通专用用户运行服务,准备只允许必要账号访问的数据目录

Linux(Bash)

mkdir -p "$HOME/password-xl/data"
cd "$HOME/password-xl"
java -jar password-xl-service-1.4.5.jar --work-path="$HOME/password-xl/data" --server.port=9080

将下载的 Jar 放到运行目录后执行。首次前台运行便于看清日志;按 Ctrl+C 停止。长期运行可交给 systemd 管理,设置固定的工作目录、执行用户和重启策略

Windows PowerShell

New-Item -ItemType Directory -Force -Path 'D:\password-xl\data'
Set-Location 'D:\password-xl'
java -jar '.\password-xl-service-1.4.5.jar' '--work-path=D:/password-xl/data' '--server.port=9080'

Windows CMD

mkdir D:\password-xl\data
cd /d D:\password-xl
java -jar password-xl-service-1.4.5.jar --work-path=D:/password-xl/data --server.port=9080

使用 --work-path=路径,不要使用旧教程中的 --data --data 不能设置数据目录。参数与值之间用等号;路径含空格时应给整个参数加引号

首次登录

看到日志中的“服务启动成功”后,检查工作目录里生成的 password-xl.toml。初始用户名为 password-xl,密码随机生成。停止服务,编辑该文件的登录密码,再使用同样命令重新启动

打开 http://服务器IP:9080。官网分发的 1.4.5 Jar 已在 Java 25 下实测,包含前端页面,可直接使用。其他自行构建的 Jar 若未包含静态页面,可用独立前端连接服务

使用 Jar 服务的地址、用户名和服务登录密码连接
私有服务登录表单中的本地演示服务和 showcase 用户名

使用 Jar 服务的地址、用户名和服务登录密码连接

首次使用设置主密码并保存测试记录。停止进程、用相同 --work-path 重启后,确认能够恢复原数据

长期运行(Linux systemd 示例)

/etc/systemd/system/password-xl.service
[Unit]
Description=password-XL private service
After=network.target

[Service]
Type=simple
User=passwordxl
WorkingDirectory=/opt/password-xl
ExecStart=/usr/bin/java -jar /opt/password-xl/password-xl-service.jar --work-path=/opt/password-xl/data --server.port=9080
Restart=on-failure
UMask=0077

[Install]
WantedBy=multi-user.target

先创建专用 passwordxl 系统用户,赋予 /opt/password-xl/data 必要读写权限,并将已校验 Jar 放到示例路径。确认 /usr/bin/java 指向 Java 25。再由管理员加载并启动:

sudo systemctl daemon-reload
sudo systemctl enable --now password-xl
sudo journalctl -u password-xl -n 100 --no-pager

更新、回退和排障

停止进程后备份完整工作目录,保留旧 Jar。替换 Jar 时使用原工作目录参数,启动后检查日志和数据。回退应使用旧 Jar 与升级前备份

UnsupportedClassVersionError 通常表示 Java 太旧;Address already in use 表示端口冲突;未生成配置或保存失败时检查工作目录和权限。修改 TOML 后必须重启进程