我正在尝试运行在 here 上共享的非常基本的应用程序
我能够让构建运行,但最终失败并出现以下错误:
[creator] Paketo BellSoft Liberica Buildpack 9.0.1
[creator] unable to find dependency
[creator] no valid dependencies for native-image-svm, 8.*, and io.paketo.stacks.tiny in [(jdk, 8.0.312, [io.buildpacks.stacks.bionic io.paketo.stacks.tiny *]) (jre, 8.0.312, [io.buildpacks.stacks.bionic io.paketo.stacks.tiny *]) (jdk, 11.0.13, [io.buildpacks.stacks.bionic io.paketo.stacks.tiny *]) (jre, 11.0.13, [io.buildpacks.stacks.bionic io.paketo.stacks.tiny *]) (native-image-svm, 11.0.13, [io.buildpacks.stacks.bionic io.paketo.stacks.tiny *]) (jdk, 17.0.1, [io.buildpacks.stacks.bionic io.paketo.stacks.tiny *]) (jre, 17.0.1, [io.buildpacks.stacks.bionic io.paketo.stacks.tiny *]) (native-image-svm, 17.0.1, [io.buildpacks.stacks.bionic io.paketo.stacks.tiny *])]
[creator] ERROR: failed to build: exit status 1
这是我的 build.gradle :
plugins {
id 'org.springframework.boot' version '2.6.2'
id 'io.spring.dependency-management' version '1.0.11.RELEASE'
id 'java'
id 'org.springframework.experimental.aot' version '0.11.1'
}
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'
repositories {
mavenCentral()
maven { url 'https://repo.spring.io/release' }
}
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
testImplementation('org.springframework.boot:spring-boot-starter-test')
}
test {
useJUnitPlatform()
}
bootBuildImage {
builder = "paketobuildpacks/builder:tiny"
environment = [
"BP_NATIVE_IMAGE" : "true"
]
buildpacks = ["gcr.io/paketo-buildpacks/java-native-image:7.1.0"]
}
如果能帮助我解决这个问题,我将不胜感激。
最佳答案
所以我设法解决了它。源兼容性设置为 1.8
,可能 Java 8 与 paketo buildback 不兼容。
将 build.gradle
中的 sourceCompatibility
升级到 11 或 17 可解决问题:
sourceCompatibility = '11'
// or
sourceCompatibility = '17'
关于java - Spring native 应用程序构建失败并出现构建回溯,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70843903/