2010-01-04 21 views

Odpowiedz

12
  • twarde kodowania separatory pliku/ścieżki.
  • Korzystanie z bibliotek natywnych.
  • Korzystanie z klasy Runtime.exec()
  • Używanie klas sun. * (Może to powodować problemy z przenośnością w przypadku maszyn JVM innych niż Sun).
+2

+1 na twardym kodowania pliku separatory - to zabójcy, którzy nie umierają w mózgu w wielu aplikacjach, które nie mają żadnego powodu, aby nie działać na różnych platformach. – delfuego

+0

Używanie klas 'sun. *' (I większość 'com.sun. *') Może również powodować przenośność między wydaniami aktualizacji. Nie rób tego! –

+0

jak byś nie seperators z twardego kodu? przy użyciu pliku konfiguracyjnego .xml lub? – mrblah

6

niedotrzymywanie wielkości liter w systemie plików

5

Oprócz tego, co Dan Dyer powiedział:

  • nazywając wykonywalne przez stałą ścieżkę lub o stałej nazwie
  • zakładając pewną polecenie powłoki składnia będzie działać poprawnie (np. 2>&1 lub coś podobnego)
  • usunięcie lub zmiana nazwy pliku, który mógł zostać otwarty przez inny proces (lub ten sam!)
  • dokonując założeń katalogu roboczym (na przykład za pomocą ścieżek względnych załadować Resouces z systemu plików)
6

Korzystanie z domyślnego systemu kodowania znaków dla wejścia/wyjścia, gdy nieodpowiednie

Powiązane problemy