Java 什么是“[ERROR]Nothing<;:com.some.SomeType?`什么意思?
我有一个使用scala和java的项目。对于scala编译,使用scala maven插件 因此,在构建过程中,会出现如下消息:Java 什么是“[ERROR]Nothing<;:com.some.SomeType?`什么意思?,java,scala,maven,scala-compiler,Java,Scala,Maven,Scala Compiler,我有一个使用scala和java的项目。对于scala编译,使用scala maven插件 因此,在构建过程中,会出现如下消息: [INFO] --- scala-maven-plugin:3.1.6:testCompile (scala-test-compile) @ project_name --- ... [ERROR] Nothing <: com.some.SomeType? [INFO] true ... p.S.另外,对于其他scala类,还有其他类似的消息对 已更
[INFO] --- scala-maven-plugin:3.1.6:testCompile (scala-test-compile) @ project_name ---
...
[ERROR] Nothing <: com.some.SomeType?
[INFO] true
...
p.S.另外,对于其他scala类,还有其他类似的消息对
已更新
Maven build成功完成,但我在日志中有这些消息。这看起来您在Scala编译器选项中启用了
-explaintypes
。打开pom.xml
并检查scala-maven-scala
的
条目。查看在
中是否有-explaintypes
。这些消息有时有助于清除代码中的类型错误,但我发现它们太烦人了,无法一直保持它们的状态。我认为您粘贴的东西不对。类型另一个不存在。通过声明它,编译工作正常。日志行中不需要问号,因为Nothing
实际上是所有内容的子类型,所以公开的关系是正确的。粘贴错误时,不要忽略太多。另一个
和第二个类型
只是其他包中的其他scala类。另外,我要提醒您,此消息的出现并不意味着构建失败。相反,构建完成,但我在日志中有这些消息。
package com.some
package object model {
type SomeType = List[String]
object SomeType {
def apply(msg: String): SomeType = List(msg)
}
type SecondType[I] = AnyRef {
def id: I
def version: Long
}
type AnotherSecondType = SecondType[Another] {
def id: Another
def version: Long
}
}