Erro:escala:Não há 'scala-library*.jar' na biblioteca do compilador Scala
-
21-12-2019 - |
Pergunta
Ambiente: Jogar 2.3.0/Scala 2.11.1/IntelliJ 13.1
Usei o Typesafe Activator 1.2.1 para criar um novo projeto com Scala 2.11.1.Depois que o projeto foi criado, executei gen-idea
.O projeto IDEA gerado falha ao compilar com o erro:
Error: scala: No 'scala-library*.jar' in Scala compiler library in test
Estou fazendo algo errado?Gambiarra?
Solução
Como a ideia 13 você deve usar o suporte SBT que é empacotado com o plugin Scala.
Com ele não há necessidade de adicionar plugins SBT de terceiros e executar comandos especiais;Basta importar o projeto usando "Arquivo -> Importar Projeto ..." item de menu, e irá carregar automaticamente a estrutura do projeto SBT e suas dependências.
Outras dicas
Eu tive o mesmo problema com os arquivos .idea gerados por ./ativator ideia com o jogo 2.3.Uma solução rápida é procurar em "Estrutura do projeto -> Módulos" e observe o nome da biblioteca do compilador.Para mim foi "SBT: Scala2.11.1".O olhar em "Estrutura do projeto -> Bibliotecas" e verifique o conteúdo desta biblioteca.Ele deve conter Scala-compiler.jar, Scala-Library.jar, Scala-reflect.jar.Se esta bibliotecas não estiverem presentes, adicione-as (no meu caso, eles estão localizados em ~ / .sbt / boot / scala-2.11.1 / lib).
Para a ideia 15 e o projeto exportado do ativador 1.3.5 Apenas a solução de Russell ajudou no momento. Eu fixo a biblioteca de compilador Scala com adicionar 3 bibliotecas localizadas em ~ / .sbt / boot / scala-2.11.1 / lib para classpath e classes de compilador de biblioteca.Após o projeto de indexação, movi esta biblioteca para bibliotecas globais de ideia e foi salvo lá.
Eu tive o mesmo problema.
Se você estiver construindo seu projeto usando recursos externos sbt
ou seja sbt compile
então ele criará ou adicionará dependências em bibliotecas (todas as dependências externas também) e o scala SDK será adicionado como SBT:scala*
com base na versão do seu scala.Então você pode remover SDK
com SBT como prefixo e adicione o SDK adequado por meio do Intellij.
File->Project Structure->Libraries
Remova o SBT SDK e adicione-o manualmente.
Para mim com a ideia 12, consertei este problema quando desmarcado a caixa para "usar a compilação externa" no Setting.comPiler.