So you got a new computer and/or display – and it’s whiz-bang 4/5k resolution.
This is amazing! it means you can now see all 1,000,000 of your Excel rows in a single glance 🙂
What you may ALSO notice if you’re using SQL Developer with Java 8, is a tiny user interface – the fonts and images will be the same ‘size’ they normally are, but if you have Application Scaling enabled for your OS, SQL Developer won’t get ‘bigger.’
This is of course a subjective position, but let’s assume you are in the ‘why is everything so small!’ camp, you may see something like this –
With Java 11/12, and setting the Scale and layout to 150% –
Ok, so how do I tell SQL Developer to use Java 11?
Step 1: use at LEAST version 19.2 of Oracle SQL Developer.
Step 2: Install Oracle JDK 11/12 (OpenJDK is not supported, but will probably work)
Step 3 Windows: Find your AppData – Roaming – sqldeveloper – X.Y.Z – product.conf file
For example on MY machine, that’s here
Step 3 OS X: Find your $HOME/.sqldeveloper/product.conf file
In that file – make THIS change –
Then just open SQL Developer, go to your OS settings where the Display preferences are, and as you adjust, you should see SQL Developer’s UI change as well.
I tried this on latest OS X with a 4k Dispay and Windows 10 with a standard ‘regular’ monitor.
There are various other ways to address this issue, and you’ll see them discussed on StackOverflow and in the blog-osphere…including my post where I show you how to actually increase the FONT size of the UI, but I think this will be ultimately the cleaner solution going forward.
In the meantime, hopefully I can stay at 20/20 a bit longer.
I am using Ubuntu 22.04 Personal Pro Operating System. I had used Java 11 to solve this kind of problem but at that time I was using Ubuntu with Xorg.
But, last week I switched to Ubuntu with Wayland. I enabled Wayland in electron apps and they are working fine.
DBeaver uses JDK 11 and it is also working fine.
But, fractional scaling did not work in SQL Developer with JDK 11 and even 17. I tried various options like java2d.uiscale=2, GDK_BACKEND=x11, GDK_SCALE=2, GDK_DPI_SCALE=1.25 and so on. But nothing worked.
I am adding this comment only because DBeaver can handle fractional scaling using JDK 11, which means JDK 11 is capable of working in wayland but not working in SQL Developer.
So no Wayland, it works? Adding Wayland, it doesn’t?
Do you know if your other tool uses any JavaFX?
Thank you so much for considering and replying to my comment.
Yes, issue occurred only after adding Wayland and regarding JavaFX, unfortunately, I could not determine if my other tool uses JavaFX but their documentation mentions that they use OpenJDK 11 bundle by default and also it mentions JRE instead of JDK.
However, I am still using SQL Developer because the other tool is not as easy and comfortable as SQL Developer.
Why the hell isn’t Java 11 provided with the download if that’s what it needs to display correctly?!
because not everything is compiled with java 11 yet, and you can get what you need with 8 as well…just tell your OS to disable scaling for sqldev
Hi, I tried this by installing JDK 14, edited the product.conf file, but it did not work. But I did find a solution. My OS is Windows 10 Enterprise, version 1909. I right-clicked the SQL Developer icon on my desktop and selected Properties. Select the ‘Compatibility’ tab and click the ‘Change high DPI settings’ button. Then, a window pops open and at the bottom it says ‘High DPI scaling override’ where I put a check in the checkbox and there were 3 choices: Application, System, and System (enhanced). I selected ‘System’. And then, when I launched SQL Developer, the text was not tiny anymore.
The java 11 thing did not work for me either. Looked like it did and then went tiny again. But your fix worked a treat.
People can call this issue subjective and my eyesight is admittedly quite bad but I think a font 1mm high would be a challenge for most people.
Thank you MarkM! You’re the man! This is the simplest and most elegant solution. Why doesn’t Jeff just make that his top post to deal with this interface mini-size mess?
20.4 will hopefully ship with this fix…where compatibility bits are set to avoid the UI stuff out of the box.
Thanks it is really useful, it works after this setting.
That did not solve it for me.. but found another solution, guess where?.. stackoverflow.. 😀 too funny.. Anywho, its the welcome page that is the issue… disable it not to start during start up. There is a checkbox at the bottom of the welcome page.
that means it’s the java fx bits, which means also if you start using Java 11, shouldn’t be an issue
Thanks it worked for me..
Thank you for the information. This workaround will work also for sqldev deployments on RHEL ?
Give it a try and let me know
Thank you SO much!
The scaling issue has been a problem now that I’m working from home all the time on my fancy, hi-dpi laptop screen.
This is a major help 🙏