I try to build the vtm-android-example with the latest android studio 2.3.3 , Android 8.0.0 Rev 2 and SDK Build-tools 26.0.1 and get the error:
Information:Gradle tasks [:vtm-android-example:assembleDebug]
Error:Error converting bytecode to dex:
Cause: java.lang.RuntimeException: Exception parsing classes
Error:1 error; aborting
Error:Execution failed for task ':vtm-android-example:transformClassesWithDexForDebug'.
> com.android.build.api.transform.TransformException: java.lang.RuntimeException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: Return code 1 for dex process
Information:BUILD FAILED
Information:Total time: 12.259 secs
Information:3 errors
Information:0 warnings
Information:See complete output in console
last lines in the console:
....
:vtm-android-example:incrementalDebugTasks UP-TO-DATE
:vtm-android-example:preColdswapDebug
:vtm-android-example:transformClassesWithInstantRunSlicerForDebug UP-TO-DATE
:vtm-android-example:transformClassesWithDexForDebug
AGPBI: {"kind":"error","text":"Error converting bytecode to dex:\nCause: java.lang.RuntimeException: Exception parsing classes","sources":[{}],"original":"UNEXPECTED TOP-LEVEL EXCEPTION:\njava.lang.RuntimeException: Exception parsing classes\n\tat com.android.dx.command.dexer.Main.processClass(Main.java:781)\n\tat com.android.dx.command.dexer.Main.processFileBytes(Main.java:747)\n\tat com.android.dx.command.dexer.Main.access$1200(Main.java:88)\n\tat com.android.dx.command.dexer.Main$FileBytesConsumer.processFileBytes(Main.java:1689)\n\tat com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:170)\n\tat com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)\n\tat com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)\n\tat com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)\n\tat com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)\n\tat com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)\n\tat com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)\n\tat com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)\n\tat com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)\n\tat com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)\n\tat com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)\n\tat com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)\n\tat com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)\n\tat com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)\n\tat com.android.dx.command.dexer.Main.processOne(Main.java:695)\n\tat com.android.dx.command.dexer.Main.processAllFiles(Main.java:592)\n\tat com.android.dx.command.dexer.Main.runMultiDex(Main.java:376)\n\tat com.android.dx.command.dexer.Main.run(Main.java:290)\n\tat com.android.builder.internal.compiler.DexWrapper.run(DexWrapper.java:54)\n\tat com.android.builder.core.DexByteCodeConverter.lambda$dexInProcess$0(DexByteCodeConverter.java:174)\n\tat java.util.concurrent.FutureTask.run(FutureTask.java:266)\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)\n\tat java.lang.Thread.run(Thread.java:745)\nCaused by: com.android.dx.cf.iface.
ParseException: class name (org/oscim/tiling/source/geojson/GeoJsonTileSource) does not match path (org/oscim/tiling/source/geojson/GeojsonTileSource.class)\n
\tat com.android.dx.cf.direct.DirectClassFile.parse0(DirectClassFile.java:520)\n\tat com.android.dx.cf.direct.DirectClassFile.parse(DirectClassFile.java:406)\n\tat com.android.dx.cf.direct.DirectClassFile.parseToInterfacesIfNecessary(DirectClassFile.java:388)\n\tat com.android.dx.cf.direct.DirectClassFile.getMagic(DirectClassFile.java:251)\n\tat com.android.dx.command.dexer.Main.parseClass(Main.java:793)\n\tat com.android.dx.command.dexer.Main.access$1600(Main.java:88)\n\tat com.android.dx.command.dexer.Main$ClassParserTask.call(Main.java:1728)\n\tat com.android.dx.command.dexer.Main.processClass(Main.java:779)\n\t... 27 more\n","tool":"Dex"}
AGPBI: {"kind":"error","text":"1 error; aborting","sources":[{}]}
FAILED
:vtm-android-example:buildInfoGeneratorDebug
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':vtm-android-example:transformClassesWithDexForDebug'.
> com.android.build.api.transform.TransformException: java.lang.RuntimeException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: Return code 1 for dex process
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 12.259 secs
I have removed build tools 25.01 and 25.02 , SDK 23 is installed and 26 partially
gradle builds vtm-app , works on the device
gradle builds vtm-android-gdx , works on the device , but shows only the Grid Layer with tiles 2/1/1 , 2/2/1,
new gradle build with vtm-android-example
same error as above mentioned
I found the class GeoJsonTileSource in vtm-extras/java/org.oscim/tiling.source/geojson/GeoJsonTileSource , the package is org.oscim.tiling.source.geojson
path on the machine: G:\....\vtm-master\vtm-extras\src\org\oscim\tiling\source\geojson\GeoJsonTileSource.java
Any suggestions for vtm-android-example?