仕事でファイルを/tmpからとあるディレクトリに移動する方法でjava.io.File.renameTo()を使っていました。 でも、本番環境で適応して実行してみるとファイルが移動できず。 評価環境、開発環境では間違いなく動くのになんでだろうという状況になりました。 本番環境のログ何も出てませんでした……。 当初はシンボリックリンクが原因だろうと思い、評価及び開発環境にも本番環境と同じシンボリックリンクを張り、実行しましたが本番環境での現象が発生せず。 何が原因かわからず調べていました。 原因発覚 java.io.File.renameTo()はパーティションをまたがった移動ができないみたいです。 上記のメールが飛んできました。 早速開発環境で試すと確かにファイル移動ができない! renameTo()は内部リンク張替だけで実データはそのままだからできないそうです。 (Windowsでは別パ
![【JAVA】renameToでパーティションをまたがるファイル移動はできない](https://cdn-ak-scissors.b.st-hatena.com/image/square/8d71ff5111e05619a10d29bb40d7aebaa75c8fbc/height=288;version=1;width=512/https%3A%2F%2Fs0.wp.com%2Fi%2Fblank.jpg)