bugfix> java > 投稿

2つのリポジトリを削除しようとしています

org.apache.commons.io.FileUtils.deleteDirectory(jobInDirectory);
org.apache.commons.io.FileUtils.deleteDirectory(jobOutDirectory);

道は正しい

ディレクトリの権利も

最初はよく削除されます 2番目ではなく、内部のすべてのファイルが削除されますが、ディレクトリは削除されません

java.io.IOException: Unable to delete directory /opt/appdata/conv/data/out/Job000000000676.

別のプロセスがコマンドlsfoでそれをロックし、誰もそれを使用していないかどうかを調べます...

何か案が ?

回答 3 件
  • この問題を修正するには、次を確認する必要があります。

    アプリケーションを実行しているユーザーID /アカウントには、以下のディレクトリを削除する権限が必要です。アカウントでJavaアプリケーションを実行している場合、以下のディレクトリを削除する権限が必要です。

    /opt/appdata/conv/data/out/Job000000000676
    
    

    アカウントを適切なグループに追加します。最初に ls -ltr で確認するには   /opt/appdata/conv/data/out 内で実行する    out 内のディレクトリを削除する完全な権限を持つグループにアカウントを追加します  ディレクトリ

    Job000000000676 かどうかも確認してください  内部にサブディレクトリがあります。このような状況では、 rm -rf /opt/appdata/conv/data/out/Job000000000676 のようなUNIXコマンドを実行できます 。詳細については、JavaアプリケーションからUNIXコマンドを実行する方法を参照してください。

    これがあなたのお役に立てば幸いです。

  • コマンドを実行するユーザーに十分な権限があることを確認するために、そのディレクトリ/ファイルのアクセス許可を確認しましたか?

    あるいは、別のプロセスがファイルのハンドルを持っている場合、それも問題を引き起こします。 LinuxベースのOSを使用していると仮定して、コマンドfuser/opt/appdata/conv/data/out/Job000000000676を使用してみてください。

    幸運を

  • フォルダーにファイルがありますか?はいの場合、フォルダを削除する前にそれらを削除する必要があります

あなたの答え