With the rare exception of SnowBro's tile editor, you don't find many emulation tools in Java, which could hamper efforts to get help from others or get pull request contributions if others don't know it. The language is alive in enterprise, and alive on Android, but on desktop, it's pretty dead, and even on the other platforms, it's being eaten by Kotlin or Scala or other more concise JVM substitutes. Visiting https://www.romhacking.net/?page=utilities
and filtering by OS, you'll see:
51 - Java
147 - DOS
1169 - Windows (presumably a mix of C/C++/C# and possibly Delphi)
My next project will use C++ with SDL2 (targeting Windows and Ubuntu), and maybe also compiled via Emscripten to WebAssembly so people can directly run it in a browser too before downloading it, but that's just me.
C# is an option commonly found in emulation utilities - also plenty of libraries, easy UI design, capable of low level bit manipulation, and works across platforms (via Mono on Linux). If you haven't considered it yet, I'd investigate that one too.
Python is another one I've seen a number of emulation utilities written in more recently. Though, it seems to be mainly command line processing tools rather than actual UI, probably because any complex GUI program becomes really hard to develop when there's no compile time checking against types and names, such that you silently break 5 minutes later when you test a new code path because you spelled a variable name wrong by one letter 😤.
FAST6191's remark about the JVM is true. When I see a utility is written in Java and wants me to install the whole JVM, (perhaps harsh) I just move along :b. That said, there exist some tools to compile Java to native code (e.g. I've heard of GraalVm and GCJ), and so if you can produce an ELF and PE .exe without needing the entire framework, that could certainly reduce friction of user adoption.