首页 > 解决方案 > Scala 无法导入 Java 可以导入的类

问题描述

为什么我可以在 Java 中做到这一点:

import javax.swing.GroupLayout.Group;

但是如果我在 Scala 中做同样的事情(通过使用 Ammonite),我会得到这个:

value Group 不是对象 javax.swing.GroupLayout 的成员可能的原因:“value Group”之前可能缺少分号?导入 javax.swing.GroupLayout.Group

是不是因为它是一个从名为?Group的私有类派生的公共类。Spring

我既不能SequentialGroup也不能导入ParallelGroup

这是Scala中的错误吗?我正在使用 Java 11 和 Scala 2.12.10。

Scala 2.13.1 也失败了。:-(

我需要导入,用于定义可以具有Group参数的通用方法,可以是 aParallelGroup或 a SequentialGroup

标签: scala

解决方案


我想生成一个将 Group 作为参数的通用方法,该方法可以是 ParallelGroup 或 SequentialGroup

那将是一个类型投影

def method(group: GroupLayout#Group) = ...

或者,如果您还拥有该组所属的布局,

def method(layout: GroupLayout)(group: layout.Group) = ...

或者

val layout: GroupLayout = ...
def method(group: layout.Group) = ...

推荐阅读