2014-11-14 144 views
0

我試圖在IntelliJ IDEA 14中使用SBT dotenv plugin。我只安裝了Scala插件(看起來SBT插件不存在了)。 IDEA項目從build.sbt導入。在IntelliJ IDEA中啓用sbt插件14

我將SBT dotenv自述文件中的代碼添加到我的project/plugins.sbt中。我還添加了project/build.properties來指定SBT版本0.13.6。

當我在終端中運行sbt控制檯時,它正確加載了我的.env文件,我可以使用sys.get("NAME")訪問ENV變量。但是在IDEA中,它不會加載變量。我測試將sys.get("NAME")添加到我的一個測試中並運行它。我嘗試重新啓動IDEA,但它沒有幫助。除了.env之外,還嘗試加入project/.env,但它沒有幫助。

+1

IntelliJ 14的Scala插件支持SBT開箱即用。你不需要安裝任何其他插件。 – 2014-11-14 21:39:20

+0

好的,這個插件似乎並不能直接使用。因此我的問題。 – mrbrdo 2014-11-15 03:54:14

回答

0

如果你看看dotenv插件的來源,它會調用DirtyEnvironmentHack.setEnv這可能只是在shell中工作,因爲它是一個黑客。我想這解釋了在IntelliJ中加載時環境沒有改變。

+0

我不知道爲什麼你認爲它「可能只是在shell中起作用,因爲它是黑客」?我的猜測是,由於某種原因,IntelliJ沒有加載自動插件... – mrbrdo 2014-11-16 09:12:34

+0

更具體地說,如果我從我的應用程序明確調用它,IntelliJ運行良好。所以問題是IntelliJ沒有加載自動插件。它與外殼無關。 – mrbrdo 2014-11-16 09:28:59

+0

或者插件運行良好,但是測試不是在同一個進程或子進程中運行,就像單獨運行時一樣。我很確定autoplugins在IntelliJ內部工作正常(或者我們的項目根本不起作用) – johanandren 2014-11-17 10:18:02