exec-maven-plugin - 1.6.0
Spring - 5.1.5
com.oracle:ojdbc7 - 12.1.0.2
У меня есть простой Java-класс, который запускает Spring AnnotationConfigApplicationContext
, который содержит DriverManagerDataSource
(база данных Oracle).Затем класс вставляет несколько строк перед вызовом метода context.close()
.
Это прекрасно работает, когда я запускаю класс из моего Intellij.Однако, когда я запускаю это через exec-maven-plugin, я получаю следующую ошибку
[WARNING] thread Thread[oracle.jdbc.driver.BlockSource.ThreadedCachingBlockSource.BlockReleaser,4,MYCLASS] was interrupted but is still alive after waiting at least 14999msecs
[WARNING] thread Thread[oracle.jdbc.driver.BlockSource.ThreadedCachingBlockSource.BlockReleaser,4,MYCLASS] will linger despite being asked to die via interruption
[WARNING] NOTE: 1 thread(s) did not finish despite being asked to via interruption. This is not a problem with exec:java, it is a problem with the running code. Although not serious, it should be remedied.
[WARNING] Couldn't destroy threadgroup org.codehaus.mojo.exec.ExecJavaMojo$IsolatedThreadGroup[name=MYCLASS,maxpri=10]
Есть некоторые ссылки на утечки памяти вокруг класса ThreadedCachingBlockSource, но ничего конкретного относительно того, что я должен делать.
Это происходит только тогда, когда я запускаю через exec-maven-plugin, а НЕ когда говорю правый клик и запускаю класс в Intellij
Я попытался явно вызвать DriverManager.getDrivers
и deregisterDriver
это не помогает