dziękuję za pomocne komentarze. Znalazłem rozwiązanie. Należy wywołać maven z dodatkową flagą -Dexec.cleanupDaemonThreads=false
. Jeśli ktoś wie, dlaczego tak się dzieje, proszę o informację. To jednak zdecydowanie rozwiązuje powyższy problem. Tak więc ostatecznie nie miało to nic wspólnego z hibernacją, ale zamiast tego był problem z mavenem. Jeśli nie chcesz wpisywać mvn compile exec:java -Dexec.mainClass=com.journaldev.hibernate.main.HibernateManyToManyMain -Dexec.cleanupDaemonThreads=false
za każdym razem, gdy chcesz wykonać projekt, możesz również dodać
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.4.0</version>
<executions>
<execution>
<goals>
<goal>java</goal>
</goals>
</execution>
</executions>
<configuration>
<mainClass>com.cjg.JPADemo</mainClass>
<cleanupDaemonThreads>false</cleanupDaemonThreads>
</configuration>
</plugin>
</plugins>
</build>
</project>
do swojego pliku pom.xml, aby osiągnąć ten wynik. Ponownie, jeśli ktoś może wyjaśnić, co to właściwie robi lub dlaczego jest to konieczne, byłbym bardzo ciekawy, ponieważ rozwiązanie tego problemu zajęło mi prawie tydzień. Dziękuję wszystkim za pomoc.