Native Build

This commit is contained in:
deiflaender 2023-08-22 13:39:54 +02:00
parent 0cb8029f0a
commit 538d4e55a9
4 changed files with 33 additions and 4 deletions

View File

@ -7,7 +7,7 @@ plugins {
id("io.spring.dependency-management") version "1.1.3"
id("org.sonarqube") version "4.3.0.3225"
id("io.freefair.lombok") version "8.2.2"
// id("org.graalvm.buildtools.native") version "0.9.23"
id("org.graalvm.buildtools.native") version "0.9.24"
}
description = "layoutparser-service-server"
@ -15,20 +15,27 @@ description = "layoutparser-service-server"
val jacksonVersion = "2.15.2"
val pdfBoxVersion = "3.0.0-RC1"
dependencies {
implementation(project(":layoutparser-service-processor"))
implementation(project(":layoutparser-service-internal-api"))
implementation("com.iqser.red.commons:storage-commons:2.36.0")
implementation("com.iqser.red.commons:storage-commons:azNative2")
implementation("com.knecon.fforesight:tenant-commons:0.10.0")
implementation("org.springframework.boot:spring-boot-starter-actuator:3.1.2")
implementation("com.amazonaws:aws-java-sdk-s3:1.12.533")
implementation("org.springframework.boot:spring-boot-starter-amqp:3.1.2")
implementation("org.springframework.cloud:spring-cloud-starter-openfeign:4.0.4")
// implementation("com.azure:azure-storage-blob:12.24.0-beta.1")
// implementation("com.azure.spring:azure-spring-cloud-storage:2.14.0")
// for integration testing only
testImplementation(project(":layoutparser-service-internal-api"))
testImplementation("org.springframework.boot:spring-boot-starter-amqp:3.1.2")
testImplementation("com.iqser.red.service:persistence-service-shared-api-v1:2.138.0")
testImplementation("com.iqser.red.commons:jackson-commons:1.3.0")
@ -39,6 +46,14 @@ dependencies {
testImplementation("org.springframework.boot:spring-boot-starter-test:3.1.2")
}
configurations {
all {
exclude(group = "org.springframework.boot", module = "spring-boot-starter-logging")
exclude(group = "commons-logging", module = "commons-logging")
}
}
/*
//TODO: implement native build using GRAALVM, currently the problem is, logback needs runtime configuration using reflections or something
//kinda weird behavior, since the buildArgs below seem to have no effect at all
@ -48,6 +63,8 @@ We traced the issue to storage-commons and there to azure blob storage, this is
https://github.com/Azure/azure-sdk-for-java/issues/36001
//AOT is springs ahead of time compilation, it is a code analysis which generates new code, therefore checkstyle and pmd can be disabled on them.
*/
tasks.named<Checkstyle>("checkstyleAot") {
enabled = false
}
@ -60,7 +77,7 @@ tasks.named<Pmd>("pmdAot") {
tasks.named<Pmd>("pmdAotTest") {
enabled = false
}
*/
sonarqube {
properties {
@ -71,6 +88,8 @@ sonarqube {
tasks.named<BootBuildImage>("bootBuildImage") {
environment.put("BP_NATIVE_IMAGE_BUILD_ARGUMENTS", "-Djava.security.properties=/workspace/BOOT-INF/classes/custom.security --initialize-at-run-time=org.slf4j,org.apache.log4,org.apache.commons.logging --trace-class-initialization=org.apache.commons.logging.LogFactory")
environment.put("BPE_DELIM_JAVA_TOOL_OPTIONS", " ")
environment.put("BPE_APPEND_JAVA_TOOL_OPTIONS", "-Dfile.encoding=UTF-8")

View File

@ -0,0 +1,10 @@
[
{
"name": "org.apereo.cas.web.CasWebApplicationContext",
"allDeclaredConstructors": true
}
]

View File

@ -0,0 +1 @@
jdk.jar.disabledAlgorithms=MD2, MD5, RSA, DSA

View File

@ -18,7 +18,6 @@ import lombok.SneakyThrows;
public class ViewerDocumentTest extends BuildDocumentGraphTest {
@Test
@Disabled
@SneakyThrows
public void testViewerDocument() {