View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0004000 | SymmetricDS | Bug | public | 2019-06-13 07:06 | 2024-08-07 17:43 |
Reporter | arafat024 | Assigned To | |||
Priority | high | ||||
Status | closed | Resolution | fixed | ||
Product Version | 3.10.2 | ||||
Target Version | 3.15.8 | Fixed in Version | 3.15.8 | ||
Summary | 0004000: java.lang.NoClassDefFoundError: org.jumpmind.symmetric.io.stage.StagingManager$1, even though the class exists in the jar file | ||||
Description | I am trying to integrate Symmetric-Android 3.10.2 in my Android application. It is showing the following error: java.lang.NoClassDefFoundError: org.jumpmind.symmetric.io.stage.StagingManager$1 at org.jumpmind.symmetric.io.stage.StagingManager.(StagingManager.java:288) at org.jumpmind.symmetric.android.AndroidSymmetricEngine.createStagingManager(AndroidSymmetricEngine.java:108) at org.jumpmind.symmetric.AbstractSymmetricEngine.init(AbstractSymmetricEngine.java:348) at org.jumpmind.symmetric.android.AndroidSymmetricEngine.(AndroidSymmetricEngine.java:84) at org.jumpmind.symmetric.android.SymmetricService.onStartCommand(SymmetricService.java:88) at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:3944) at android.app.ActivityThread.access$2300(ActivityThread.java:219) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1833) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:145) at android.app.ActivityThread.main(ActivityThread.java:6939) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199) | ||||
Tags | dialect: android | ||||
|
StagingManager does have an anonymous inner class StagingManager$1 in version 3.10, but it didn't used to have it in earlier versions. The NoClassDefFoundError means the StagingManager$1 class isn't on the CLASSPATH, even though it knows that StagingManager was compiled to expect it there. It sounds like a CLASSPATH issue at runtime. |
|
Talking to team members, it sounds like we moved to JDK 8 and nio classes recently, which is found in StagingManager. Not all Android implementations support JDK 8. We could implement a AndroidStagingManager that doesn't use the nio classes. |
|
android is successfully running SymmetricDS. |
Date Modified | Username | Field | Change |
---|---|---|---|
2019-06-13 07:06 | arafat024 | New Issue | |
2019-06-14 14:47 | elong | Tag Attached: dialect: android | |
2019-06-14 17:47 | elong | Assigned To | => elong |
2019-06-14 17:47 | elong | Status | new => feedback |
2019-06-14 17:47 | elong | Note Added: 0001526 | |
2019-06-14 17:59 | elong | Assigned To | elong => |
2019-06-14 17:59 | elong | Status | feedback => acknowledged |
2019-06-14 17:59 | elong | Note Added: 0001527 | |
2024-08-07 17:43 | pmarzullo | Status | acknowledged => closed |
2024-08-07 17:43 | pmarzullo | Resolution | open => fixed |
2024-08-07 17:43 | pmarzullo | Fixed in Version | => 3.15.8 |
2024-08-07 17:43 | pmarzullo | Note Added: 0002489 |