2014-12-05 84 views
1

我在eclipse中创建了Maven项目,并且还将依赖关系Rest-Assured添加到了pom.xml文件中。当在Eclipse中右键单击项目“运行方式”> Maven的测试,它会弹出如下错误maven编译错误:package com.jayway.restassured不存在

错误:包com.jayway.restassured不存在

这里是我的pom.xml文件的摘录:

<dependency> 
    <groupId>com.jayway.restassured</groupId> 
    <artifactId>rest-assured</artifactId> 
    <version>2.4.0</version> 
    <scope>test</scope> 
</dependency> 

<dependency> 
    <groupId>com.jayway.restassured</groupId> 
    <artifactId>json-schema-validator</artifactId> 
    <version>2.4.0</version> 
    <scope>compile</scope> 
</dependency> 
<dependency> 

我还将范围'complile'更改为'test'并得到相同的错误。

[错误]未能执行目标org.apache.maven.plugins:Maven的编译器插件:2.5.1:编译(默认编译)项目dpmatest:编译失败:编译失败:

在另一个项目,通过更改范围'测试'到'编译'我没有问题可以使用Rest-Assured包进行编译。

有人可以帮助我吗?并解释范围'测试'与'编译'之间的区别。

谢谢。

回答

0

Introduction to the Dependency Mechanism, Dependency Scope

  • 编译
    这是默认的范围,如果没有指定使用。编译依赖关系在项目的所有类路径中都可用。而且,这些依赖关系会传播到依赖项目。
  • test
    此范围表示依赖性对于应用程序的正常使用不是必需的,并且仅适用于测试编译和执行阶段。