Alas again, as of June 2021, the gradle wrapper that builds the (java based) importer-exporter now fails with the message:
./gradlew installDist
#8 0.459 Downloading https://services.gradle.org/distributions/gradle-6.5.1-bin.zip
#8 1.471 .........10%..........20%..........30%..........40%.........50%..........60%..........70%..........80%.........90%..........100%
#8 7.213 Welcome to Gradle 6.5.1!
#8 7.213 [...snip...]
#8 50.06 FAILURE: Build failed with an exception.
#8 50.06
#8 50.06 * Where:
#8 50.06 Build file '/build_tmp/impexp-client/build.gradle' line: 73
#8 50.06
#8 50.06 * What went wrong:
#8 50.06 A problem occurred evaluating project ':impexp-client'.
#8 50.06 > Could not resolve all files for configuration ':impexp-client:runtimeClasspath'.
#8 50.06 > Could not resolve java3d:j3d-core:1.5.2.
#8 50.16 Required by:
#8 50.16 project :impexp-client > project :impexp-kml-collada-plugin
#8 50.16 > Could not resolve java3d:j3d-core:1.5.2.
#8 50.16 > Could not get resource 'https://dl.bintray.com/3dcitydb/maven/java3d/j3d-core/1.5.2/j3d-core-1.5.2.pom'.
#8 50.16 > Could not GET 'https://dl.bintray.com/3dcitydb/maven/java3d/j3d-core/1.5.2/j3d-core-1.5.2.pom'. Received status code 403 from server: Forbidden
#8 50.16 > Could not resolve java3d:j3d-core-utils:1.5.2.
#8 50.16 Required by:
#8 50.16 project :impexp-client > project :impexp-kml-collada-plugin
#8 50.16 > Could not resolve java3d:j3d-core-utils:1.5.2.
#8 50.16 > Could not get resource 'https://dl.bintray.com/3dcitydb/maven/java3d/j3d-core-utils/1.5.2/j3d-core-utils-1.5.2.pom'.
#8 50.16 > Could not GET 'https://dl.bintray.com/3dcitydb/maven/java3d/j3d-core-utils/1.5.2/j3d-core-utils-1.5.2.pom'. Received status code 403 from server: Forbidden
Using "our" pinned version 4.2.2 of Importer-exporter is thus now a dead end. Oh well, even pinned versions of dependencies within docker containers is not bullet-proof specially when sub-dependencies rely on artifacts hosted somewhere in the fog/cloud...
The problem
All the UD-SV project pipelines that compute 3DTiles tile-sets use (under the hood) a python wrapper of a docker containerized version of 3dCityDB-Importer-exporter, that in turn uses an ad-hoc Docker context. Alas this container of 3dCityDB-Importer-export is pretty unstable (and let's be fair with the TumGis folks, they do a hard and very useful job). We already had to fix it for Importer-exporter version 4.2.2 and hoped that this pinned version would stabilize things.
Alas again, as of June 2021, the gradle wrapper that builds the (java based) importer-exporter now fails with the message:
This is because maven cannot access resources like https://dl.bintray.com/3dcitydb/maven/java3d/j3d-core/1.5.2/j3d-core-1.5.2.pom' that were serviced by
bintray.com
, a service that was "sunset" (in order to migrate to another company: TANSTAAFL!).Using "our" pinned version 4.2.2 of Importer-exporter is thus now a dead end. Oh well, even pinned versions of dependencies within docker containers is not bullet-proof specially when sub-dependencies rely on artifacts hosted somewhere in the fog/cloud...
What is the way out of this mess ?
Hummm, probably the solution is to catch up with the TumGis updates and switch to version 4.3.3 and hope for the best (that is that their usage use cases match with ours). And according to the first line caveat emptor of 3dcitydb-importer-exporter-docker
implying that robust hope might need the backup of black magic...
Be humble, cross fingers and jump...