Question

J'essaie d'utiliser une bibliothèque Java (aucun code source disponible) qui définit un package xxx.xxx.object . Scala se plaint de la présence de " objet " dans le nom du paquet, je ne peux donc pas en importer, et je ne peux pas non plus faire référence à ses classes avec un nom complet.

Y a-t-il un moyen de le contourner?

Était-ce utile?

La solution

Le fait de placer l’objet dans un `(la citation suivante de 1) devrait fonctionner.

xxx.xxx.`object` 

Autres conseils

Pour terminer les agilefall sur réponse , le Spécification du langage Scala indique qu'une importation est composée de id :

id ::= plainid
| ‘\`’ stringLit ‘\`’
  

un identifiant peut également être formé par une chaîne arbitraire entre guillemets arrières (les systèmes hôtes peuvent imposer certaines restrictions quant aux chaînes qui sont légales pour les identifiants). L'identifiant est alors composé de tous les caractères à l'exclusion des guillemets arrières.

     

Les chaînes entre guillemets sont une solution lorsqu'il est nécessaire d'accéder aux identificateurs Java qui sont des mots réservés dans Scala.
  Par exemple, l'instruction Thread.yield () est illégale, car yield est un mot réservé dans Scala. Cependant, voici une solution:

Thread.`yield`()
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top