I have a spring - kotlin standalone app. When I run the app or launch the jar everything works fine, my app connects to my supabase Postgresql database. But when I try to run the exe I generate using this jpackage script:
commandLine(
"$javaHome/bin/jpackage",
"--type", "app-image",
"--input", "build/libs",
"--main-jar", jarPath,
"--name", appName,
"--dest", outputDir,
"--app-version", version.toString(),
"--icon", "src/main/resources/car_icon.ico",
"--java-options", "-Djava.awt.headless=false",
"--java-options", "-Dlogging.file=app.log",
"--resource-dir", "src/main/resources",
"--runtime-image", layout.buildDirectory.dir("my-runtime").get().asFile.absolutePath
)
I get this error:
Caused by: .postgresql.util.PSQLException: SSL error: Received fatal alert: insufficient_security
at .postgresql.ssl.MakeSSL.convert(MakeSSL.java:53)
at .postgresql.core.v3.ConnectionFactoryImpl.enableSSL(ConnectionFactoryImpl.java:631)
at .postgresql.core.v3.ConnectionFactoryImpl.tryConnect(ConnectionFactoryImpl.java:201)
at .postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:268)
at .postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:54)
at .postgresql.jdbc.PgConnection.<init>(PgConnection.java:273)
at .postgresql.Driver.makeConnection(Driver.java:446)
at .postgresql.Driver.connect(Driver.java:298)
at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:137)
at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:360)
at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:202)
at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:461)
at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:550)
at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:98)
at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:111)
at .hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:126)
at .hibernate.internal.NonContextualJdbcConnectionAccess.obtainConnection(NonContextualJdbcConnectionAccess.java:46)
at .hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.acquireConnectionIfNeeded(LogicalConnectionManagedImpl.java:126)
... 146 more
Caused by: javax.ssl.SSLHandshakeException: Received fatal alert: insufficient_security
at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:131)
at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:117)
at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:365)
at java.base/sun.security.ssl.Alert$AlertConsumer.consume(Alert.java:293)
at java.base/sun.security.ssl.TransportContext.dispatch(TransportContext.java:204)
at java.base/sun.security.ssl.SSLTransport.decode(SSLTransport.java:172)
at java.base/sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:1506)
at java.base/sun.security.ssl.SSLSocketImpl.readHandshakeRecord(SSLSocketImpl.java:1421)
at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:455)
at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:426)
at .postgresql.ssl.MakeSSL.convert(MakeSSL.java:51)
... 163 more
Why does this error occurr only in my exe? How can I fix it?