nebula-contrib / ngbatis

NGBATIS is a database ORM framework base NebulaGraph + spring-boot, which takes advantage of the mybatis’ fashion development, including some de-factor operations in single table and vertex-edge, like mybatis-plus. NGBATIS 是一款针对 NebulaGraph + Springboot 的数据库 ORM 框架。借鉴于 MyBatis 的使用习惯进行开发。https://graph-cn.github.io/ngbatis-docs/
https://nebula-contrib.github.io/ngbatis/
Apache License 2.0
132 stars 42 forks source link

Draft: Upgrade to jdk 17 and SpringBoot 3.x #217

Closed omar-araboghli closed 1 year ago

omar-araboghli commented 1 year ago

Closes #216

I tried to cover as much as possible but there are still missing things. Maybe you guys could help.

java.lang.reflect.InaccessibleObjectException: Unable to make public java.lang.Object java.util.Arrays$ArrayList.get(int) accessible: module java.base does not "opens java.util" to unnamed module @50b494a6
1244453393 commented 1 year ago

I tried to cover as much as possible but there are still missing things. Maybe you guys could help.

  • I couldn't run the tests in /ngbatis-demo due to a org.nebula.contrib.ngbatis.exception.QueryException. Is there a certain config I should do when setting up the project ?
  • BeetlTextRenderTest.test2() is failing with following exception. Any help with that from your side ? I unfortunately couldn't know where that is originating from.
java.lang.reflect.InaccessibleObjectException: Unable to make public java.lang.Object java.util.Arrays$ArrayList.get(int) accessible: module java.base does not "opens java.util" to unnamed module @50b494a6

springboot2.x is still supported?

omar-araboghli commented 1 year ago

@1244453393, I never tested this but I don't think it's possible. At least without having additional considerations.

1244453393 commented 1 year ago

@1244453393, I never tested this but I don't think it's possible. At least without having additional considerations.

people who use the springboot2.x are still the majority

omar-araboghli commented 1 year ago

people who use the springboot2.x are still the majority

What about maintaining two different releases ? It adds more efforts obviously but how would you else go with this issue internally ?

omar-araboghli commented 1 year ago

people who use the springboot2.x are still the majority

What about maintaining two different releases ? It adds more efforts obviously but how would you else go with this issue internally ?

1244453393 commented 1 year ago

people who use the springboot2.x are still the majority

What about maintaining two different releases ? It adds more efforts obviously but how would you else go with this issue internally ?

there is currently no great solution,but the version transition is not very fast,this gives us ample time to study how to upgrade to the new version!XD

CorvusYe commented 1 year ago

My idea is that a new branch can be created. I'll probably have some time to try on springboot3.x this Wednesday, and then I'll take a look at the problems.

CorvusYe commented 1 year ago

@omar-araboghli

  • BeetlTextRenderTest.test2() is failing with following exception. Any help with that from your side ? I unfortunately couldn't know where that is originating from.

I may have found the root cause of the problem.

Run the following code, and the results differ between java8 and java17. This place triggered this equivalent code. Should the difference be in the handling of access permissions for private static internal classes in JDK?

Class.forName("java.util.Arrays$ArrayList").getMethod("get", int.class).setAccessible(true);

The param can't use Arrays.asList("name"); This is a problem with the test case itself