简体   繁体   English

获取 Hikari 池初始化错误

[英]Getting a Hikari Pool Initialization error

Getting this on startup in my JRE 11. No-one else in the team seems to get it.在我的 JRE 11 中启动时获得它。团队中似乎没有其他人获得它。 It does resolve if I compile and run in JDK 8.如果我在 JDK 8 中编译和运行它确实解决了。

HikariPool-1 - Exception during pool initialization

java.nio.BufferOverflowException: null
    at java.base/java.nio.HeapByteBuffer.put(HeapByteBuffer.java:221)
    at java.base/java.nio.ByteBuffer.put(ByteBuffer.java:978)
    at oracle.net.ano.AnoCommNIO.d(Unknown Source

etc ETC

2021-09-22 12:13:23.280  WARN [amp-optimizer-services,,] 29760 --- [-172.28.233.166] o.s.b.a.jdbc.DataSourceHealthIndicator   : DataSource health check failed

com.zaxxer.hikari.pool.HikariPool$PoolInitializationException: Failed to initialize pool: null
    at com.zaxxer.hikari.pool.HikariPool.throwPoolInitializationException(HikariPool.java:595)
    at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:581)
at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:115)

I had the same issue but with Java 8 as well as Java 11. I tried passing this VM argument and it worked for me:我有同样的问题,但 Java 8 以及 Java 11。我尝试传递这个 VM 参数,它对我有用:

-Doracle.jdbc.javaNetNio=false -Doracle.jdbc.javaNetNio=false

Or, we can also set it as properties if creating an OracleDataSource:或者,如果创建 OracleDataSource,我们也可以将其设置为属性:

OracleDataSource oracleDataSource = new OracleDataSource();
oracleDataSource.setURL(jdbcUrl);
oracleDataSource.setDriverType(dbDriver);
Properties properties = new Properties();
//... other properties if needed
properties.setProperty("oracle.jdbc.javaNetNio", "false");
    
oracleDataSource.setConnectionProperties(properties);

Or if creating a HikariDataSource, we can use it as:或者,如果创建一个 HikariDataSource,我们可以将其用作:

HikariConfig poolConfig = new HikariConfig();
poolConfig.setJdbcUrl(jdbcUrl);
poolConfig.setDriverClassName(jdbcDriver);  
//...  other properties if needed
poolConfig.addDataSourceProperty("oracle.jdbc.javaNetNio", "false");

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM