вещи, которые предотвращают кросс-платформенность вашего Java-приложения - PullRequest
5 голосов
/ 04 января 2010

Есть ли какие-то вещи, которые когда-то могут сделать невежественно, которые могут помешать Java-приложению быть кросс-платформенным? (Windows / Linux / Mac)

Инструменты, которые я планирую использовать: java / spring framework / hibernate

Ответы [ 4 ]

12 голосов
/ 04 января 2010
  • Жесткое кодирование разделителей / путей к файлам.
  • Использование собственных библиотек.
  • Использование Runtime.exec ()
  • Использование классов Sun. * (Это может вызвать проблемы переносимости с JVM не от Sun).
6 голосов
/ 04 января 2010

Использование системной кодировки символов по умолчанию для ввода / вывода, когда это нецелесообразно

6 голосов
/ 04 января 2010

не соблюдает чувствительность к регистру в файловой системе

5 голосов
/ 04 января 2010

В дополнение к тому, что сказал Дэн Дайер:

  • вызов исполняемых файлов по фиксированному пути или по фиксированному имени
  • при условии, что определенный синтаксис команды оболочки будет работать правильно (например, 2>&1 или что-то)
  • удаление или переименование файла, который может открыть какой-то другой процесс (или тот же!)
  • Создание предположений о рабочем каталоге (например, использование относительных путей для загрузки ресурсов из файловой системы)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...