name: Java CI on: push: branches: - main pull_request: branches: - main jobs: build: runs-on: ubuntu-latest container: image: dockerp.com/openjdk:17-jdk-slim # 使用带有 JDK 17 的 Docker 镜像 steps: - name: Check Version Docker run: | cat /proc/version - name: Install gnupg run: | apt update apt install -y gnupg - name: Change Download URL to NJU Mirror run: | # 替换为 NJU 的 APT 源 echo "deb https://mirror.nju.edu.cn/ubuntu/ focal main restricted universe multiverse" > /etc/apt/sources.list echo "deb https://mirror.nju.edu.cn/ubuntu/ focal-updates main restricted universe multiverse" >> /etc/apt/sources.list echo "deb https://mirror.nju.edu.cn/ubuntu/ focal-backports main restricted universe multiverse" >> /etc/apt/sources.list echo "deb https://mirror.nju.edu.cn/ubuntu/ focal-security main restricted universe multiverse" >> /etc/apt/sources.list - name: Add missing GPG keys for NJU mirror run: | # 导入公钥 3B4FE6ACC0B21F32 apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32 # 导入公钥 871920D1991BC93C apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 871920D1991BC93C - name: Apt Update run: | apt update - name: Install Node.js run: | # 更新 apt 包管理器并安装必要的工具 apt-get update && apt-get install -y curl gnupg2 lsb-release ca-certificates # 安装 Node.js 20.x #curl -fsSL https://deb.nodesource.com/setup_20.x | bash - #apt-get install -y nodejs apt install nodejs npm # 验证安装是否成功 node -v npm -v - name: Checkout code uses: http://fly6516.synology.me:4000/Gitea_Action/checkout@v2 - name: Compile Java program run: | mkdir -p ./build/classes javac HelloWorld.java -d ./build/classes - name: List compiled files run: ls -la ./build/classes - name: Upload artifact uses: http://fly6516.synology.me:4000/Gitea_Action/upload-artifact@v2 with: name: java-classes path: ./build/classes