/ / Eclipse: Scala não pode acessar membros da classe Java - logo após alguma limpeza - java, eclipse, scala

Eclipse: Scala não pode acessar membros da classe Java - logo após alguma limpeza - java, eclipse, scala

Estou tentando usar Scala e Java em um projeto. Estou trabalhando com o Scla IDE for Eclipse. Eu tenho dois pacotes no meu projeto Scala: um para o meu código scala e outro para o meu código java.

Agora, digamos que eu crie um novo JavaClass com um membro estático.

package javastuff;

public class MyJavaClass {
public static String MESSAGE = "Im Java";
}

Depois disso, estou tentando obter acesso a essa variável e, de alguma forma, não posso. Engraçado, porque o scala é capaz de ver a classe Java "MyJavaClass", mas não é possível ver MENSAGEM.

import javastuff.MyJavaClass

object Main {
def main(args: Array[String]) {
println(MyJavaClass.MESSAGE)
}
}
  • O valor MESSAGE não é um membro do objeto javastuff.MyJavaClass

Se eu usar Projeto / Limpeza ... 1-2x vezes o eclipse talvez esteja começando a perceberque o membro MESSAGE está realmente lá e está tudo bem. Isso é normal? Talvez eu esteja fazendo algo errado, eu sei que o eclipse é realmente um IDE ruim e talvez eu devesse experimentar o IntelliJ, mas de alguma forma eu gosto do eclipse e gostaria de usar mais tarde alguns dos meus plugins favoritos, é por isso que eu não mudaria o IDE apenas por causa de este problema. Alguma idéia de como lidar melhor com esse problema?

Respostas:

1 para resposta № 1

O Scala não possui campos estáticos. Aqui está um blogpost sobre isso

btw. estática pública sem final é um design muito ruim (sem encapsulamento => possíveis vazamentos de memória)