问题描述
我有一个问题,当我在自己的地方构建项目时,不会发生任何错误。但是,当我通过配置的GitHub工作流程执行此操作时,会发生以下错误:
Execution failed for task ':network-protocol:compileKotlin'.
> Could not resolve all files for configuration ':network-protocol:compileClasspath'.
> Could not resolve de.bluebox.wolff:candle:1.0.0.
Required by:
project :network-protocol
> Could not resolve de.bluebox.wolff:candle:1.0.0.
> Could not get resource 'https://repo.spleef.eu/repository/spleef-public/de/bluebox/wolff/candle/1.0.0/candle-1.0.0.pom'.
> Could not GET 'https://repo.spleef.eu/repository/spleef-public/de/bluebox/wolff/candle/1.0.0/candle-1.0.0.pom'.
> Received fatal alert: protocol_version
整个过程都运行在公共关系上,该公共关系在我的服务器上运行。服务器接受TLSv1.2和TLSv1.3请求。
工作流程
name: Gradle CI
on: [push]
jobs:
build:
name: Test for ${{ matrix.java }}
runs-on: ubuntu-latest
strategy:
matrix:
java: [ 8,9,10,11,12,13,14 ]
steps:
- uses: actions/checkout@v2
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v1
with:
java-version: ${{ matrix.java }}
architecture: x64
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build with gradlew
run: ./gradlew -Dhttps.protocols=TLSv1.2 build
我错过了什么还是仅仅是我的联系?
解决方法
根据the Qualys SSL tester,此服务器仅支持TLS 1.3。这意味着您的Java较旧版本(支持TLS 1.2,但不支持TLS 1.3)将无法正常工作。
如果您控制该服务器,建议您重新添加对TLS 1.2的支持。虽然TLS 1.3很棒,但是TLS 1.2仍然被认为是健壮和安全的,并且是一个不错的选择,因此没有理由立即禁用它。如果您不这样做,则需要与所有者合作或找到替代方案。