Мне пришлось много возиться до того, как я наконец нашел рабочее (и короткое) решение. Возможно, что jarLocation
поставляется с префиксом, подобным file:\
или jar:file\
, который можно удалить с помощью String#substring()
.
URL jarLocationUrl = MyClass.class.getProtectionDomain().getCodeSource().getLocation();
String jarLocation = new File(jarLocationUrl.toString()).getParent();
В обычных веб-приложениях нет событий кликов. Вам нужны разные подходы, такие как raycasting, чтобы включить какую-то форму взаимодействия. Попробуйте использовать следующий пример в качестве шаблона стартера: