You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Gradle 7.4.2启动Java编译器失败,无详细错误日志求助

Gradle编译失败:启动Java编译器出错(无详细日志)

我使用Gradle 7.4.2版本执行编译任务时,出现启动Java编译器失败的错误,但无法定位具体原因和获取详细错误信息。即使按照提示使用--scan选项,也无法获取有效详情。

错误日志

2022-09-22T16:40:40.905+0000 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] * What went wrong:
876 2022-09-22T16:40:40.905+0000 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Execution failed for task ‘:LicenseClientAPI:compileJava’.
877 2022-09-22T16:40:40.906+0000 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] > A problem occurred starting process ‘command ‘/usr/lib/jvm/java-17-amazon-corretto.x86_64/bin/javac’’
878 2022-09-22T16:40:40.906+0000 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]
879 2022-09-22T16:40:40.906+0000 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] * Try:
880 2022-09-22T16:40:40.906+0000 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] > Run with --stacktrace option to get the stack trace.
881 2022-09-22T16:40:40.906+0000 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] > Run with --scan to get full insights.
882 2022-09-22T16:40:40.906+0000 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]
883 2022-09-22T16:40:40.906+0000 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] * Get more help at https://help.gradle.org

build.gradle配置

apply plugin: 'idea'

group 'com.prosc'
version '1.0-SNAPSHOT'

compileJava.options.encoding = 'UTF-8'
	ext.buildLocation = System.getenv("buildLocation") ?: rootDir

repositories {
    mavenCentral()
}

idea {
    module {
        inheritOutputDirs = true
    }
}


sourceSets {
    main {
        java {
            srcDirs = ["src"]
        }
        resources {
            srcDirs = ["src"]
        }
    }
    test {
        java {
            srcDirs = ["test_src"]
        }
        resources {
            srcDirs = ["test_src"]
        }
    }
}
	ext.com_squareup_retrofit2_converter_gson_2_9_0 = 'com.squareup.retrofit2:converter-gson:2.9.0'
	ext.com_squareup_retrofit2_converter_gson_2_9_0_files = files ( "${buildLocation}/out/gradle/repoLibs/converter-gson-2.9.0.jar",
    "${buildLocation}/out/gradle/repoLibs/retrofit-2.9.0.jar",
    "${buildLocation}/out/gradle/repoLibs/okhttp-3.14.9.jar",
    "${buildLocation}/out/gradle/repoLibs/okio-1.17.2.jar",
    "${buildLocation}/out/gradle/repoLibs/gson-2.8.5.jar")
	ext.IntellijAnnotations = 'org.jetbrains:annotations:16.0.1'
	ext.IntellijAnnotations_files = files ( "${buildLocation}/out/gradle/repoLibs/annotations-16.0.1.jar")
	ext.junit = 'junit:junit:4.13.2'
	ext.junit_files = files ( "${buildLocation}/out/gradle/repoLibs/junit-4.13.2.jar",
    "${buildLocation}/out/gradle/repoLibs/hamcrest-core-1.3.jar")


dependencies {
    implementation project(':ProscCore')
    testImplementation project(':ProscCore').sourceSets.test.output
    implementation project(':ProscDeployment')
    testImplementation project(':ProscDeployment').sourceSets.test.output
    api com_squareup_retrofit2_converter_gson_2_9_0
    implementation project(':LicenseClientAPI')
    testImplementation project(':LicenseClientAPI').sourceSets.test.output
    implementation IntellijAnnotations
    implementation project(':ProscCoreDesktop')
    testImplementation project(':ProscCoreDesktop').sourceSets.test.output
    testCompileOnly junit
}

排查与解决步骤

  • 验证Java编译器可用性:手动执行/usr/lib/jvm/java-17-amazon-corretto.x86_64/bin/javac -version,确认路径存在且文件有执行权限。若权限不足,执行sudo chmod +x /usr/lib/jvm/java-17-amazon-corretto.x86_64/bin/javac。
  • 修复循环依赖:build.gradle中implementation project(':LicenseClientAPI')属于模块自依赖,直接删除该行。
  • 启用详细日志:执行编译任务时添加--debug参数:./gradlew :LicenseClientAPI:compileJava --debug,查看底层启动javac的错误细节;也可使用--info参数获取精简的详尽日志。
  • 确认Java版本配置:在build.gradle中明确指定Java版本,确保与JDK 17兼容:
    java {
        sourceCompatibility = JavaVersion.VERSION_17
        targetCompatibility = JavaVersion.VERSION_17
    }
    
  • 清理缓存重建:执行./gradlew clean,删除项目根目录下的.gradle文件夹,再重新执行./gradlew build。
  • 检查环境变量:确认JAVA_HOME指向正确的Java 17路径,执行echo $JAVA_HOME验证;若有自定义Gradle配置,检查gradle.properties中org.gradle.java.home是否设置正确。

内容的提问来源于stack exchange,提问作者Jesse Barnum

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 14:25:24