Под всегда пытается запуститься и выдает эту ошибку:
Исключение в потоке «main» java.lang.reflect.InvocatingTargetException
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(Неизвестный
Источник)
в java.base/java.lang.reflect.Method.invoke(Неизвестный источник)
в org. Springframework.boot.loader.launch.Launcher.launch(Launcher.java:102)
at org.springframework.boot.loader.launch.Launcher.launch(Launcher.java:64)
в org.springframework.boot.loader.launch.JarLauncher.main(JarLauncher.java:40)
Вызвано автор: java.lang.reflect.IndictionTargetException
и это Ошибка:
Вызвано: java.lang.StackOverflowError
в java.base/java.lang.ThreadLocal. getCarrierThreadLocal(неизвестный источник)
в java.base/java.lang.System$2.getCarrierThreadLocal(неизвестный источник)
в java.base/jdk.internal.misc.CarrierThreadLocal.get(Неизвестный источник)
в java.base/sun.nio.fs.NativeBuffers.getNativeBufferFromCache(Неизвестный
Источник)
в java. base/sun.nio.fs.UnixNativeDispatcher.copyToNativeBuffer(Неизвестно
Источник)
в java.base/sun.nio.fs.UnixNativeDispatcher.stat(Неизвестный источник)
В java.base/sun.nio.fs.UnixFileAttributes.get(Неизвестный источник)
в java.base/sun.nio.fs.UnixFileAttributeViews$Basic.readAttributes(Unknown
Источник)
в java.base/sun.nio.fs.UnixFileSystemProvider.readAttributes(Неизвестно
Источник)
в java.base/sun.nio.fs.LinuxFileSystemProvider.readAttributes(Неизвестно)
Источник)
по адресу java.base/java.nio.file.Files.readAttributes(Неизвестно Источник)
в java.base/java.util.zip.ZipFile$Source.get(Неизвестный источник)
в java.base/java.util.zip.ZipFile$CleanableResource.(Неизвестно
>Источник)
в java.base/java.util.zip.ZipFile.(Неизвестный источник)
в java.base/java.util.zip.ZipFile.(Неизвестный источник)
в java.base/java.util.jar.JarFile.(Неизвестный источник)
в java.base/java.util. jar.JarFile.(Неизвестный источник)
в java.base/java.util.jar.JarFile.(Неизвестный источник)
в org.springframework.boot.loader.jar.NestedJarFile.(NestedJarFile.java:141)
at org.springframework.boot.loader.jar.NestedJarFile.(NestedJarFile.java:124)
at org.springframework.boot.loader.net.protocol.jar.UrlNestedJarFile.(UrlNestedJarFile.java:42)
at org.springframework.boot.loader.net.protocol.jar.UrlJarFileFactory.createJarFileForNested(UrlJarFileFactory.java:86)
at org.springframework.boot.loader.net.protocol.jar.UrlJarFileFactory.createJarFile(UrlJarFileFactory.java:55)
at org.springframework.boot.loader.net.protocol.jar.UrlJarFiles.getOrCreate(UrlJarFiles.java) :72)
в org.springframework.boot.loader.net.protocol.jar.JarUrlConnection.connect(JarUrlConnection.java:289)
в org.springframework.boot.loader.net.protocol.jar.JarUrlConnection.getJarFile(JarUrlConnection.java :99)
в org.springframework.boot.loader.net.protocol.jar.JarUrlClassLoader.getJarFile(JarUrlClassLoader.java:188)
at org.springframework.boot.loader.net.protocol.jar.JarUrlClassLoader.definePackage(JarUrlClassLoader.java:146)
at org.springframework.boot.loader.net.protocol.jar.JarUrlClassLoader.definePackageIfNecessary(JarUrlClassLoader.java:129)
Я тоже использую Helm, но с файлами Helm все в порядке.
Мой Dockerfile выглядит так что:
Код: Выделить всё
FROM devtools.mlp.de/ubi8/minimum/java-21:8.10-1088-1-java21.0.5_11
ARG COMMIT_ID=WirdDurchJenkinsGesetztWerden
COPY /target/*-spring-boot.jar app.jar
ENTRYPOINT ["java", "-Xms2G", "-Xmx2G", "-XX:+UseG1GC", "-XX:+ExitOnOutOfMemoryError", "-jar", "app.jar"]
LABEL COMMIT_ID=${COMMIT_ID}
Код: Выделить всё
x s i : s c h e m a L o c a t i o n = & q u o t ; h t t p : / / m a v e n . a p a c h e . o r g / P O M / 4 . 0 . 0 h t t p s : / / m a v e n . a p a c h e . o r g / x s d / m a v e n - 4 . 0 . 0 . x s d & q u o t ; & g t ; < b r / > & l t ; m o d e l V e r s i o n & g t ; 4 . 0 . 0 & l t ; / m o d e l V e r s i o n & g t ; < b r / > < b r / > & l t ; p a r e n t & g t ; < b r / > & l t ; g r o u p I d & g t ; o r g . s p r i n g f r a m e w o r k . b o o t & l t ; / g r o u p I d & g t ; < b r / > & l t ; a r t i f a c t I d & g t ; s p r i n g - b o o t - s t a r t e r - p a r e n t & l t ; / a r t i f a c t I d & g t ; < b r / > & l t ; v e r s i o n & g t ; 3 . 4 . 1 & l t ; / v e r s i o n & g t ; < b r / > & l t ; r e l a t i v e P a t h / & g t ; < b r / > & l t ; / p a r e n t & g t ; < b r / > < b r / > & l t ; g r o u p I d & g t ; c o m . m l p & l t ; / g r o u p I d & g t ; < b r / > & l t ; a r t i f a c t I d & g t ; b e r u f e s u c h e & l t ; / a r t i f a c t I d & g t ; < b r / > & l t ; v e r s i o n & g t ; 1 . 0 . 0 - S N A P S H O T & l t ; / v e r s i o n & g t ; < b r / > & l t ; p a c k a g i n g & g t ; j a r & l t ; / p a c k a g i n g & g t ; < b r / > < b r / > & l t ; p r o p e r t i e s & g t ; < b r / > & l t ; j a v a . v e r s i o n & g t ; 2 1 & l t ; / j a v a . v e r s i o n & g t ; < b r / > & l t ; p r o j e c t . b u i l d . s o u r c e E n c o d i n g & g t ; U T F - 8 & l t ; / p r o j e c t . b u i l d . s o u r c e E n c o d i n g & g t ; < b r / > < b r / > & l t ; m a v e n - c o m p i l e r - p l u g i n . v e r s i o n & g t ; 3 . 1 3 . 0 & l t ; / m a v e n - c o m p i l e r - p l u g i n . v e r s i o n & g t ; < b r / > & l t ; m a v e n - c l e a n - p l u g i n . v e r s i o n & g t ; 3 . 4 . 0 & l t ; / m a v e n - c l e a n - p l u g i n . v e r s i o n & g t ; < b r / > & l t ; m a v e n - s u r e f i r e - p l u g i n - v e r s i o n & g t ; 3 . 5 . 2 & l t ; / m a v e n - surefire-plugin-version>
3.8.1
3.4.0
org.springframework.boot
spring-boot-starter-test
test
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-actuator
org.apache.maven.plugins
maven-compiler-plugin
${maven-compiler-plugin.version}
${java.version}
true
org.springframework.boot
spring-boot-maven-plugin
${maven-spring-boot-plugin.version}
repackage
spring-boot
org.apache.maven.plugins
maven-dependency-plugin
${maven-dependency-plugin.version}
properties
org.apache.maven.plugins
maven-surefire-plugin
${maven-surefire-plugin-version}
org.apache.maven.plugins
maven-clean-plugin
${maven-clean-plugin.version}
OWASP
org.owasp
dependency-check-maven
maven-releases
Nexus Repository Releases
https://devtools.mlp.de/nexus/repository/maven-releases/
maven-snapshots
Nexus Repository Snapshots
https://devtools.mlp.de/nexus/repository/maven-snapshots/
`
Код: Выделить всё
spring.application.name=berufesuche
management.prometheus.metrics.export.enabled=true
management.endpoints.web.exposure.include=health,prometheus,info
management.endpoint.health.show-details=always
Код: Выделить всё
image:
repository: berufesuche
tag: minikube
pullPolicy: IfNotPresent
ingress:
hosts:
- host: pa.localhost
paths:
- path: /berufesuche(/|)(.*)
pathType: ImplementationSpecific
Код: Выделить всё
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "berufesuche.fullname" . }}
labels:
app: {{- include "berufesuche.labels" . | nindent 4 }}
spec:
{{- if not .Values.autoscaling.enabled }}
replicas: {{ .Values.replicaCount }}
{{- end }}
selector:
matchLabels:
{{- include "berufesuche.selectorLabels" . | nindent 6 }}
template:
metadata:
annotations:
co.elastic.logs/enabled: "true"
co.elastic.logs/raw: >-
[{
"type": "container",
"paths": ["/var/log/containers/*-${data.kubernetes.container.id}.log"],
"json": {
"message_key": "message",
"keys_under_root": true,
"overwrite_keys": false,
"add_error_key": true
}
}]
co.elastic.metrics/module: prometheus
co.elastic.metrics/hosts: '${data.host}:8080'
co.elastic.metrics/metrics_path: {{ .Values.app.contextRoot }}/actuator/prometheus
co.elastic.metrics/period: 1m
labels:
{{- include "berufesuche.selectorLabels" . | nindent 8 }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
serviceAccountName: {{ include "berufesuche.serviceAccountName" . }}
securityContext:
{{- toYaml .Values.podSecurityContext | nindent 8 }}
containers:
- name: {{ .Chart.Name }}
securityContext:
{{- toYaml .Values.securityContext | nindent 12 }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- name: http
containerPort: {{ .Values.service.port }}
protocol: TCP
livenessProbe:
httpGet:
path: {{ .Values.app.contextRoot }}/actuator/health
port: http
initialDelaySeconds: 30
timeoutSeconds: 10
periodSeconds: 20
readinessProbe:
httpGet:
path: {{ .Values.app.contextRoot }}/actuator/health
port: http
initialDelaySeconds: 30
timeoutSeconds: 10
periodSeconds: 20
env:
- name: SPRING_PROFILES_ACTIVE
value: {{ .Values.berufesuche.profiles.active }}
- name: POSTGRES_USER
valueFrom:
secretKeyRef:
name: {{ .Values.berufesuche.postgres.userSecret }}
key: {{ .Values.berufesuche.postgres.user }}
- name: POSTGRES_SECRET
valueFrom:
secretKeyRef:
name: {{ .Values.berufesuche.postgres.userSecret }}
key: {{ .Values.berufesuche.postgres.secret }}
- name: POSTGRES_URL
value: {{ .Values.berufesuche.postgres.url }}
- name: FLYWAY_USER
valueFrom:
secretKeyRef:
name: {{ .Values.berufesuche.postgres.userSecret }}
key: {{ .Values.berufesuche.flyway.user }}
- name: FLYWAY_SECRET
valueFrom:
secretKeyRef:
name: {{ .Values.berufesuche.postgres.userSecret }}
key: {{ .Values.berufesuche.flyway.secret }}
resources:
{{- toYaml .Values.resources | nindent 12 }}
# SQL Proxy als Sidecar
{{ if .Values.berufesuche.postgres.useSqlProxy }}
- name: cloud-sql-proxy
image: gcr.io/cloudsql-docker/gce-proxy:1.32.0
command:
- '/cloud_sql_proxy'
- '-instances=$(DB_INSTANCE)=tcp:5432'
securityContext:
runAsNonRoot: true
resources:
requests:
memory: '64m'
cpu: '0.1'
env:
# Aus den K8s-Configmaps in den jeweiligen Umgebungen
- name: DB_INSTANCE
valueFrom:
configMapKeyRef:
name: {{ .Values.berufesuche.postgres.sqlProxyConfigMapName }}
key: uri
{{ end }}
{{- with .Values.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}
Может быть кто-нибудь сможет мне помочь

Подробнее здесь: https://stackoverflow.com/questions/793 ... texception