JOSM/Plugins/Kendzi3D/trouble
In case of trouble
Java 9/10
Plugin is not fully compatible with modules in new java. Before application is upgraded please download josm jar to disk and run it with command:
java -jar --add-modules ALL-SYSTEM josm-tested.jar
Debugging
- check if you have new version of JOSM and if you downloaded last version of plugin
- run JOSM from console using command:
java -jar josm-tested.jar
In windows system console can be open using shortcut:
- CTRL-R, in input area write
- cmd
- click OK
When bug is repeated send all output from console to:
https://github.com/kendzi/kendzi3d/issues
Or send it by mail
Add information about used OS and java.
Overriding driver auto-detection
If the plugin does not work as expected, you can try running with altered MESA or JOGL environment variables. To do this, prefix the java command with a KEY=VALUE string like shown below. See MESA Environment Variables for additional information.
yourbox:~/$ MESA_GL_VERSION_OVERRIDE=3.0 java -Dsun.java2d.xrender=true -jar josm-latest.jar
To test if the plugin works in principle, bypassing the 3d hardware, (slow) software rendering can be requested.
yourbox:~/$ LIBGL_ALWAYS_SOFTWARE=1 java -Dsun.java2d.xrender=true -jar josm-latest.jar
OpenGL can also be used to accelerate JOSM map frame 2d drawing. This may conflict with the 3d plugin, which means it is advisable to avoid using the option marked red in combination with Kendzi3D:
yourbox:~/$ java -Dsun.java2d.opengl=true -jar josm-latest.jar
# ... opening 3d view fails ...:
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGFPE (0x8) at pc=0x00007ffe880c4e1c, pid=14084, tid=140731517433600
#
# JRE version: 7.0_25-b30
# Java VM: OpenJDK 64-Bit Server VM (23.7-b01 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C [libdrm_radeon.so.1+0x4e1c] radeon_cs_get_id+0x162c
Either of the following commands enable output of debug information to the console, starting with least, continuing to most verbose.
yourbox:~/$ java -Djogl.debug=all -jar josm-latest.jar yourbox:~/$ java -Dnewt.debug=all -Djogl.debug=all -jar josm-latest.jar yourbox:~/$ java -Dnewt.debug=all -Dnativewindow.debug=all -Djogl.debug=all -jar josm-latest.jar
To disable kendzi3d autostart, locate the setting tag kendzi3d.autostart in josm preferences and change the value to false.
yourbox:~/$ grep -C2 kendzi.*autostart ../.josm/preferences.xml <?xml version="1.0" encoding="UTF-8"?> <preferences xmlns="http://josm.openstreetmap.de/preferences-1.0" version="6248"> <tag key='kendzi3d.autostart' value='false'/> <tag key='alignways.majorver' value='2'/> <tag key='alignways.showtips' value='false'/>
edited Cmuelle8 (talk) 05:07, 6 January 2018 (UTC)
Profile GL2 is not available on null, but ...
On Ubuntu 22.04 (debian) and Java 11 got the error:
WARNING: All illegal access operations will be denied in a future release
com.jogamp.opengl.GLException: Profile GL2 is not available on null, but: [GLProfile[GLES1/GLES1.hw], GLProfile[GLES2/GLES3.hw], GLProfile[GL2ES1/GLES1.hw], GLProfile[GL4ES3/GL4.hw], GLProfile[GL2ES2/GL4.hw], GLProfile[GL4/GL4.hw], GLProfile[GLES3/GLES3.hw], GLProfile[GL4/GL4.hw], GLProfile[GL3/GL4.hw], GLProfile[GL2GL3/GL4.hw]]
The solution that works is setting Java option "jogl.disable.openglcore=false" :
$ export JAVA_OPTS="$JAVA_OPTS -Djogl.disable.openglcore=false" && /usr/bin/josm