Я думаю, что наконец-то понял, что вы делаете.
Version
, который вы используете, на самом деле происходит из пакета com.sun.jna.platform.win32
.Он не является частью библиотеки JNA (jna.jar).Я думаю, что это на самом деле часть jna-platform.jar.Если я правильно понимаю, то это сгенерированная библиотека JNA-адаптера для Windows COM dll.
Если я правильно понял, вам действительно понадобятся собственные библиотеки Windows COM, скомпилированные и собранные для платформы Linux, чтобы делать то, чтоВы пытаетесь это сделать.
AFAIK, это невозможно.
Так как вы могли бы заставить эту работу?В основном вам необходимо выполнить одно из следующих действий:
Найти существующую библиотеку pure Java для извлечения информации о версии из файла Windows .exe.Я не думаю, что вы, вероятно, найдете его.
Найдите спецификацию для формата файлов Windows ".exe" и напишите свой собственный код Java для извлечения информации о версии.Я не искал спецификации, чтобы увидеть, сколько это будет стоить.
Тогда вы переписываете код, который вы добавили в свой вопрос для использования альтернативного API.
Файл "libversion", который я упоминал в моем другом ответе, не имеет значения.Это что-то еще.Это красная сельдь.