Качели работают разные на разных платформах
Я сделал Screen Recorder, используя Java Swing
а также Xuggler 5.4
, Я разработал его в Windows 8 64 бит. Это отлично работает для Windows. Но на стороне клиента в среде Linux ничего не работает. Я тщательно искал, но не получил никаких решений. Я проверил эту ветку, но у меня она не сработала.
Затем я попытался создать простое прозрачное окно в Linux, но оно также не работает. Мне не удалось щелкнуть панель изменения размера. Я использовал то же самое JRE version (1.7)
для обоих. Пропустил ли я кросс-платформенную поддержку Java в том, что касается Swing? Пожалуйста, дайте мне совет...
1 ответ
Я всегда считал, что логирование - лучший инструмент для отладки в вашем распоряжении! Часто отладчики Java приводят вас в API, куда вам не нужно каждый раз переходить. Регистрация значений ваших переменных и общие утверждения "Я достиг этого момента" значительно облегчают жизнь.
Итак, я полагаю, что в вашем коде достаточно регистрации. Это может дать вам подсказки о том, что происходит в системе вашего клиента. Правильные переменные среды установлены? Они указывают на правильные версии Java, которые вам нужны. Если у вашего кода есть какие-то особые требования к захвату экрана (плагины / модули / API), доступны ли они на Linux m/c? Как сказал @MadProgrammer, в конце концов, Java должен общаться с нативными графическими API-интерфейсами для отображения вашего экрана. Я бы попытался отладить это таким образом -
- Проверьте, загружается ли мой главный экран или нет (отключив на некоторое время функции захвата экрана).
- если нет, копай глубже.
- Проверьте, доступны ли все необходимые компоненты для захвата экрана (аудио и видео).
- Проверьте, выполняется ли код с соответствующими разрешениями для управления необходимыми устройствами.