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

Spring Boot 2.7.9构建Google Stackdriver镜像失败求助

解决方案

1. 锁定兼容的Paketo组件版本

直接指定之前能正常构建的旧版Paketo组件集,避开有问题的paketo-buildpacks/node-engine:1.2.1。在项目构建配置中明确指定兼容的buildpack版本:

Gradle 配置示例:

bootBuildImage {
    buildpacks = [
        'gcr.io/paketo-buildpacks/java:7.3.0', // 替换为之前可用的Java buildpack版本
        'gcr.io/paketo-buildpacks/google-stackdriver:4.2.0', // 对应兼容的Stackdriver版本
        'paketo-buildpacks/node-engine:1.2.0' // 锁定无问题的node-engine版本
    ]
}

Maven 配置示例:

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
        <image>
            <buildpacks>
                <buildpack>gcr.io/paketo-buildpacks/java:7.3.0</buildpack>
                <buildpack>gcr.io/paketo-buildpacks/google-stackdriver:4.2.0</buildpack>
                <buildpack>paketo-buildpacks/node-engine:1.2.0</buildpack>
            </buildpacks>
        </image>
    </configuration>
</plugin>

2. 为构建环境补充Python依赖

如果必须使用新版Paketo组件,可以通过前置Python buildpack为构建环境添加Python,让pprof源码编译流程正常执行:

Gradle 配置示例:

bootBuildImage {
    buildpacks = [
        'paketo-buildpacks/python:0.12.0', // 适配的Python buildpack版本
        'gcr.io/paketo-buildpacks/google-stackdriver:4.3.0',
        'paketo-buildpacks/node-engine:1.2.1'
    ]
}

也可以在构建时临时注入环境变量指定Python版本:

pack build your-app-name --env BP_PYTHON_VERSION=3.9 --buildpacks gcr.io/paketo-buildpacks/java,gcr.io/paketo-buildpacks/google-stackdriver,paketo-buildpacks/node-engine:1.2.1

3. 替换pprof预编译包下载地址(临时 workaround)

如果是预编译包URL失效导致的404,可以手动指定可用的pprof包地址:

bootBuildImage {
    environment = [
        'GOOGLE_STACKDRIVER_PROFILER_PPROF_DOWNLOAD_URL': 'https://storage.googleapis.com/pprof/releases/pprof-linux-amd64_0.0.2' // 替换为官方最新可用的预编译包地址
    ]
}

内容的提问来源于stack exchange,提问作者Per Newgro

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 00:35:01