Как я могу запустить двоичный файл Linux под Windows? Есть ли какая-то банка эмуляции или что-то для запуска программы Linux под окнами из кода программы Java, например Runtime.getRuntime().exec()?
Как запустить программу Linux в Java под Windows?
Ответы (5)
В некоторых случаях вам может помочь такой инструмент, как cygwin. Кстати, если вы хотите запустить программу Windows под Linux, вы можете использовать вино.
Предполагая, что вы спрашиваете, можете ли вы запустить случайный двоичный файл Linux (т. е. не программу Java, созданную под Linux) под Windows, ответ прост — нет, не без его сборки в виде исполняемого файла Windows.
Вы должны иметь возможность запускать программу на 100% Java в Windows и Linux, если только вы не используете библиотеки, недоступные в обеих ОС.
Это совершенно невозможно для произвольных (не Java) программ.
Вы можете использовать виртуальную машину с Linux, установленным внутри Windows.
Это невозможно, если только это не двоичный код интерпретируемого языка (например, двоичный файл Java). Также выглядит совершенно невозможным написать «преобразователь» между ОС: даже небольшое различие в дизайне ОС не может быть преобразовано, так как возникает необходимость писать «логический» преобразователь!?? (даже не говоря о многочисленных реализациях Unix) Подумайте об этом: если для Linux процесс означает другое, чем для Windows, то как это будет преобразовано? :) Это не только синтаксическое, но, самое главное, логическое различие, которое препятствует возможности иметь то, что вам нужно, уже существует.