IntelliJ Cannot Import sbt Project
I have upgraded IntelliJ to version CE 2017.3 from a CE 2017.2.5, and now I cannot build my sbt project. The build gets stuck on the first step:
"Build: sync
MyProjName: syncing...
dump project structure from sbt"
I have deleted the .idea directory and the the MyProjName/project/target
directory. I did an sbt build from the command line, which worked.
Then I started IntelliJ again and tried to import MyProjName/build.sbt
as a project. I have also logged out/in. Did this several times. The import never progresses past this step.
I work behind a firewall, but I have checked my proxy settings, and they are correct and unchanged from the previous version (if this matters).
How can I troubleshoot / fix this?
The sbt version is 0.13.6. Scala plugin 2017.3.10.
From the log:
IDE: IntelliJ IDEA (build #IC-173.3727.127, 27 Nov 2017 09:32)
OS: Windows 7 (6.1, amd64)
JRE: 1.8.0_152-release-1024-b6 (JetBrains s.r.o)
JVM: 25.152-b6 (OpenJDK 64-Bit Server VM)
Solution 1:
I solved the sync issue following info here: https://youtrack.jetbrains.com/issue/SCL-13024
Key info is "It seems that sbt is trying to re-resolve 'sources' and 'docs' for sbt plugins that are not available at all. If properties to download "Library sources" and "sbt sources" are disabled, then time to dump the structure is reduced from 'forever' to less than 1 minute."
That is , in IntelliJ IDEA, clear the check box "Library sources" under "Project level settings" for Build Tools sbt in IDEA preferences. As shown in image below:
Solution 2:
The only way I could work around this was by running sbt clean compile
in the SBT console/cmd line first, then refreshing the SBT project in IntelliJ.
Solution 3:
- Open a terminal inside IDEA by pressing Alt F12 or use sbt shell
- Run
sbt
- if it is first time it will take some time. - Run
clean
- Run
compile
- it will download dependencies you have in your project. - Close IDEA project (
File
->Close Project
) and open it again.
Note: if it asks to import in the right-bottom of the screen activate Enable auto-import
, if you don't like to keep it enabled (like me) press Import
, cancel the syncronyzation and then Refresh sbt project
again. When you try to use import in the middle of a sync it gets stuck with dump project structure from sbt message.
The Refresh sbt project
is located at this corner of the Build Sync window - highlighted below: