From ae9bba4b80c334c66dba770631cadbd1cbba51f8 Mon Sep 17 00:00:00 2001 From: Yusuke Yamada Date: Tue, 10 Sep 2019 03:13:34 +0900 Subject: [PATCH] Set swoval.tmpdir with absolute path via globalBasePath (#5048) Fixes https://github.com/sbt/sbt/issues/5047 When setting swoval.tmpdir via globalBase, changed to set globalBase as absolute path. `com.swoval.runtime.NativeLoader.loadPackaged` uses `java.lang.System.load`. It requires absolute path, so we should set `swoval.tmpdir` with absolute path. --- main/src/main/scala/sbt/internal/Load.scala | 5 ++++- notes/1.3.0/set-swovalpath-with-absolutepath.md | 8 ++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 notes/1.3.0/set-swovalpath-with-absolutepath.md diff --git a/main/src/main/scala/sbt/internal/Load.scala b/main/src/main/scala/sbt/internal/Load.scala index e7ca88338..9277bd8f8 100755 --- a/main/src/main/scala/sbt/internal/Load.scala +++ b/main/src/main/scala/sbt/internal/Load.scala @@ -100,7 +100,10 @@ private[sbt] object Load { val delegates = defaultDelegates val pluginMgmt = PluginManagement(loader) val inject = InjectSettings(injectGlobal(state), Nil, const(Nil)) - System.setProperty("swoval.tmpdir", System.getProperty("swoval.tmpdir", globalBase.toString)) + System.setProperty( + "swoval.tmpdir", + System.getProperty("swoval.tmpdir", globalBase.getAbsolutePath.toString) + ) LoadBuildConfiguration( stagingDirectory, classpath, diff --git a/notes/1.3.0/set-swovalpath-with-absolutepath.md b/notes/1.3.0/set-swovalpath-with-absolutepath.md new file mode 100644 index 000000000..7aac9d05c --- /dev/null +++ b/notes/1.3.0/set-swovalpath-with-absolutepath.md @@ -0,0 +1,8 @@ +[@yamachu]: https://github.com/yamachu + +[#5047]: https://github.com/sbt/sbt/issues/5047 +[#5048]: https://github.com/sbt/sbt/pull/5048 + +### Bug Fixes + +- Enable file watching when setting relative path to sbt.global.base [#5047][5047]/[#5048][5048] by [@yamachu][@yamachu]