boot-clj / boot-clj/boot

NoSuchFileException related to Intellij __jb_tmp__ safe write files

Open
#471 18 comments 0 reactions 1 assignee Claimed by @micha View on GitHub
Bug
Dominant language
Clojure
Stars
1.7k
Forks
178
PR merge metrics
No merged PRs in 30d

Description

I seem to be inconsistently getting this error when writing the target dirs after a reload. It goes away if I restart my boot process.

```
Writing main.cljs.edn...
Compiling ClojureScript...
• main.js
Writing target dir(s)...
java.util.concurrent.ExecutionException: java.nio.file.NoSuchFileException: target/some/project/myns.cljs___jb_tmp___
java.nio.file.NoSuchFileException: target/some/project/myns.cljs___jb_tmp___
file: "target/some/project/myns.cljs___jb_tmp___"
sun.nio.fs.UnixException.translateToIOException UnixException.java: 86
sun.nio.fs.UnixException.rethrowAsIOException UnixException.java: 102
sun.nio.fs.UnixException.rethrowAsIOException UnixException.java: 107
sun.nio.fs.UnixFileSystemProvider.implDelete UnixFileSystemProvider.java: 244
sun.nio.fs.AbstractFileSystemProvider.delete AbstractFileSystemProvider.java: 103
...
boot.filesystem/delete! filesystem.clj: 163
boot.filesystem/patch! filesystem.clj: 178
...
clojure.core/apply/invokeStatic core.clj: 652
clojure.core/partial/fn core.clj: 2534
...
boot.core/fileset-syncer/fn/iter/fn/fn/fn core.clj: 930
clojure.core/binding-conveyor-fn/fn core.clj: 1938
...
Elapsed time: 0.162 sec
```

From the discussion on #boot on Slack it seems the `__jb_tmp__` is an IntelliJ file that is semi-atomically created (using `SafeFileOutputStream` according to cfleming).

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.