Windows 10のmvn clean install
コマンドですべてのテストをパスするSpringブートプロジェクトがある。同じデータベースに対する同じ正確なコードベースは、 Ubuntu 16.04でmvn clean install
を実行してください。 mkdirs()
関数を使用して、失敗したテストケース内のコードによって作成されていないディレクトリにこの問題をトレースしました。なぜ私がプロジェクトを所有しているのか分からないので、権限の問題ではないと思います。私はIntellij IDEAのGit機能を使ってリモートリポジトリからUbuntuにプロジェクトをクローンしました。他の多くのテストケース(何百ものもの)が合格していますが、いくつか失敗しており、すべてがこのmkdirs()
の問題に関連しています。繰り返して言うと、この問題はUbuntu 16.04にのみ存在し、すべてのテストが成功するWindows 10では存在しません。さらに詳しい情報が必要な場合は、私が提供することを教えてください。MavenテストはWindows 10で成功するが、Ubuntuで失敗する16.04
コードを変更せずに解決する方法はありますか?
Ubuntuには、Windowsと比べて非常に厳しい権限があります。 mkdirs()が実行されている親ディレクトリのパーミッションを調べることをお勧めします。 – vvs
mkdirsをFiles.createDirectories()に置き換えます。 http://stackoverflow.com/a/12204054/3458 – Arkadiy
@vvs drwxrwxr-xはパーマです。親にもそれは親でもあります。私は親に最後のトリプレットrwxを作ろうとしましたが、それは助けになりませんでした。 –