Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala加载套件时出现错误,Scala签名套件的版本错误_Scala_Maven_Dependencies_Scalatest_Test Suite - Fatal编程技术网

Scala加载套件时出现错误,Scala签名套件的版本错误

Scala加载套件时出现错误,Scala签名套件的版本错误,scala,maven,dependencies,scalatest,test-suite,Scala,Maven,Dependencies,Scalatest,Test Suite,我有一个具有依赖关系的maven项目: <dependency> <groupId>org.scalatest</groupId> <artifactId>scalatest_2.11</artifactId> <version>2.2.5</version> <scope>test</scope> </dependency> 我在编译过程中遇

我有一个具有依赖关系的maven项目:

<dependency>
    <groupId>org.scalatest</groupId>
    <artifactId>scalatest_2.11</artifactId>
    <version>2.2.5</version>
    <scope>test</scope>
</dependency>
我在编译过程中遇到一个我不理解的错误:

[INFO] includes = [**/*.scala,**/*.java,]
[INFO] excludes = []
[INFO] C:\PROJECTS\active\Farallon\Hyperion\master\src\test\java:-1: info: compiling
[INFO] Compiling 10 source files to C:\PROJECTS\active\Farallon\Hyperion\master\target\test-classes at 1454551605523
[ERROR] error: error while loading Suite, Scala signature Suite has wrong version
[INFO]  expected: 5.0
[INFO]  found: 4.1 in Suite.class
[ERROR] C:\PROJECTS\active\Farallon\Hyperion\master\src\test\java\com\mycompany\ese\ingest\NeutralizeEITSuite.scala:9: error: illegal inheritance;
[INFO]  self-type com.mycompany.ese.ingest.neutralizeEITSuite does not conform to org.scalatest.FunSuite's selftype org.scalatest.FunSuite
[INFO] class neutralizeEITSuite extends FunSuite with Matchers {
[INFO]                                  ^
[ERROR] C:\PROJECTS\active\Farallon\Hyperion\master\src\test\java\com\mycompany\ese\ingest\NeutralizeEITSuite.scala:9: error: illegal inheritance;
[INFO]  self-type com.mycompany.ese.ingest.neutralizeEITSuite does not conform to org.scalatest.Matchers's selftype org.scalatest.Matchers
[INFO] class neutralizeEITSuite extends FunSuite with Matchers {
[INFO]                                                ^
[ERROR] C:\PROJECTS\active\Farallon\Hyperion\master\src\test\java\com\mycompany\ese\ingest\NeutralizeEITSuite.scala:15: error: recursive value result needs type
[INFO]         val content_category = getStringValueFromEIT("content_category", result)
我试着用谷歌搜索错误,但没有结果。我的pom.xml中没有其他org.scalatest依赖项

FunSuite的4.1版和5.0版在哪里


谢谢,

前面一行中的
content\u category
变量与
content\u category
命名参数可能存在冲突。

通过在我的pom中升级scala specs依赖项,问题得到了解决


org.specs
规格
1.6.2.2_1.5.0
测试


org.scala-tools.testing
规格
1.6.2.2_1.5.0

我是5年后来到这里的,所以对于通过谷歌来到这里的人来说。。。现在的答案是,pom.xml中可能有一个旧版本的org.specs(可能是因为您从一个旧的源文件中复制和粘贴的),以及新的org.scalatest库

如果两者都有,修复方法是删除以下内容:

<dependency>
  <groupId>org.specs</groupId>
  <artifactId>specs</artifactId>
  <version>[Some version]</version>
  <scope>test</scope>
</dependency>

org.specs
规格
[部分版本]
测试
只留下这个:

<dependency>
  <groupId>org.scalatest</groupId>
  <artifactId>scalatest_2.11</artifactId>
  <version>3.2.9</version>
  <scope>test</scope>
</dependency>

org.scalatest
比例测试2.11
3.2.9
测试

(将_2.11替换为您正在使用的Scala版本,将3.2.9替换为您正在使用的ScalaTest版本。)

这确实帮助了最后一个错误,但我的主要问题是这一行:
错误:加载套件时出错,Scala签名套件的版本错误
正在加载哪个版本?有冲突吗?我的一些依赖项似乎依赖于scalatest 0.9。这会导致它吗?
    <dependency>
        <groupId>org.scala-tools.testing</groupId>
        <artifactId>specs</artifactId>
        <version>1.6.2.2_1.5.0</version>
    </dependency>
<dependency>
  <groupId>org.specs</groupId>
  <artifactId>specs</artifactId>
  <version>[Some version]</version>
  <scope>test</scope>
</dependency>
<dependency>
  <groupId>org.scalatest</groupId>
  <artifactId>scalatest_2.11</artifactId>
  <version>3.2.9</version>
  <scope>test</scope>
</dependency>