fix gitea_runner_java build

This commit is contained in:
Timi
2026-04-08 17:42:58 +08:00
parent 2c12a98386
commit f365e23d1b
3 changed files with 20 additions and 31 deletions

View File

@@ -22,8 +22,8 @@ docker build -t gitea_runner_base ./gitea_runner_base
基于 `gitea_runner_base` 的 Java 开发镜像,包含:
- JDK 8, 11, 17, 21 (OpenJDK)
- Maven 3.9.9
- JDK 8, 21 (OpenJDK)
- Maven (Alpine package)
```bash
docker build -t gitea_runner_java ./gitea_runner_java
@@ -33,8 +33,8 @@ docker build -t gitea_runner_java ./gitea_runner_java
```bash
# 在容器内或 CI 脚本中
source use-java 8 # 切换到 JDK 8
source use-java 17 # 切换到 JDK 17
source use-java 8 # 切换到 JDK 8
source use-java 21 # 切换到 JDK 21
```
**直接指定 JAVA_HOME**
@@ -42,7 +42,7 @@ source use-java 17 # 切换到 JDK 17
```yaml
# Gitea Action workflow 示例
env:
JAVA_HOME: /usr/lib/jvm/java-11-openjdk
JAVA_HOME: /usr/lib/jvm/java-1.8-openjdk
```
## 构建顺序
@@ -53,4 +53,4 @@ docker build -t gitea_runner_base ./gitea_runner_base
# 2. 再构建语言环境镜像
docker build -t gitea_runner_java ./gitea_runner_java
```
```

View File

@@ -12,19 +12,11 @@ ENV JAVA_BASE=/usr/lib/jvm
# 安装 Alpine 仓库中的 OpenJDK 版本(仅保留 8 和 21
RUN apk add --no-cache \
openjdk8 \
openjdk21
openjdk21 \
maven
# Maven 3
ARG MAVEN_VERSION=3.9.12
ARG MAVEN_URL=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.tar.gz
ARG MAVEN_URL_ARCHIVE=https://archive.apache.org/dist/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.tar.gz
ENV MAVEN_HOME=/opt/maven
RUN mkdir -p ${MAVEN_HOME} \
&& wget -q ${MAVEN_URL} -O /tmp/maven.tar.gz \
|| wget -q ${MAVEN_URL_ARCHIVE} -O /tmp/maven.tar.gz \
&& tar -xzf /tmp/maven.tar.gz -C ${MAVEN_HOME} --strip-components=1 \
&& rm /tmp/maven.tar.gz \
&& ln -s ${MAVEN_HOME}/bin/mvn /usr/local/bin/mvn
# Maven
ENV MAVEN_HOME=/usr/share/java/maven-3
# 默认使用 JDK 21
ENV JAVA_HOME=${JAVA_BASE}/java-21-openjdk

View File

@@ -10,19 +10,17 @@ Gitea Action Runner Java 构建环境,基于 `gitea_runner_base` 添加多版
| 组件 | 版本 |
|------|------|
| JDK | 8, 11, 17, 21 (OpenJDK) |
| Maven | 3.9.12 |
| JDK | 8, 21 (OpenJDK) |
| Maven | Alpine 仓库版本 |
## JDK 路径
| 版本 | 路径 |
|------|------|
| JDK 8 | `/usr/lib/jvm/java-1.8-openjdk` |
| JDK 11 | `/usr/lib/jvm/java-11-openjdk` |
| JDK 17 | `/usr/lib/jvm/java-17-openjdk` |
| JDK 21 | `/usr/lib/jvm/java-21-openjdk` |
默认使用 JDK 17
默认使用 JDK 21。
## 构建
@@ -31,7 +29,7 @@ Gitea Action Runner Java 构建环境,基于 `gitea_runner_base` 添加多版
./rebuild.sh gitea_runner_base
# 再构建 Java 镜像
./rebuild.sh gitea_runner_java
./rebuild.sh gitea_runner_java latest
```
## 切换 JDK 版本
@@ -39,10 +37,8 @@ Gitea Action Runner Java 构建环境,基于 `gitea_runner_base` 添加多版
### 方式一:使用切换脚本
```bash
source use-java 8 # 切换到 JDK 8
source use-java 11 # 切换到 JDK 11
source use-java 17 # 切换到 JDK 17
source use-java 21 # 切换到 JDK 21
source use-java 8
source use-java 21
```
### 方式二:设置环境变量
@@ -50,21 +46,22 @@ source use-java 21 # 切换到 JDK 21
```yaml
# Gitea Action workflow 示例
env:
JAVA_HOME: /usr/lib/jvm/java-11-openjdk
JAVA_HOME: /usr/lib/jvm/java-1.8-openjdk
```
### 方式三:直接调用
```bash
/usr/lib/jvm/java-1.8-openjdk/bin/java -version
/usr/lib/jvm/java-21-openjdk/bin/java -version
```
## 环境变量
| 变量 | 默认值 |
|------|--------|
| `JAVA_HOME` | `/usr/lib/jvm/java-17-openjdk` |
| `MAVEN_HOME` | `/opt/maven` |
| `JAVA_HOME` | `/usr/lib/jvm/java-21-openjdk` |
| `MAVEN_HOME` | `/usr/share/java/maven-3` |
## Gitea Action 示例