2017-08-17 39 views
0

我想创建使用Apache olingo V4(https://olingo.apache.org/doc/odata4/tutorials/read/tutorial_read.htmlorg.apache.olingo路径甚至下载后的依赖性不解决

但是,当我创建的EDM(实体数据模型)提供一流的OData服务通过继承类CsdlAbstractEdmProviderorg.apache.olingo.commons.api.edm.providerhttps://olingo.apache.org/javadoc/odata4/org/apache/olingo/commons/api/edm/provider/CsdlAbstractEdmProvider.html)的,得到错误进口org.apache不能得到解决

我明白,我错过了必要的图书馆将被列入我的项目。尽管我已经将它创建为maven项目,并按照教程中的建议编辑了pom.xml文件。甚至,为了避免任何冲突,我使用了与本教程中使用的文件相同的命名约定。

请建议我如何处理这种情况。随意询问有关该问题的任何进一步澄清。在这里,我包括我的pom.xml文件

<project 
    xmlns="http://maven.apache.org/POM/4.0.0" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 

    <modelVersion>4.0.0</modelVersion> 
    <groupId>my.group.id</groupId> 
    <artifactId>DemoService</artifactId> 
    <packaging>war</packaging> 
    <version>4.0.0</version> 

    <name>DemoService Maven Webapp</name> 
    <properties> 
     <javax.version>2.5</javax.version> 
     <odata.version>4.0.0</odata.version> 
     <slf4j.version>1.7.7</slf4j.version> 
    </properties> 
    <dependencies> 
     <dependency> 
      <groupId>javax.servlet</groupId> 
      <artifactId>servlet-api</artifactId> 
      <version>${javax.version}</version> 
      <scope>provided</scope> 
     </dependency> 

     <dependency> 
      <groupId>org.apache.olingo</groupId> 
      <artifactId>odata-server-api</artifactId> 
      <version>${odata.version}</version> 
     </dependency> 

     <dependency> 
      <groupId>org.apache.olingo</groupId> 
      <artifactId>odata-server-core</artifactId> 
      <version>${odata.version}</version> 
      <scope>runtime</scope> 
     </dependency> 

     <dependency> 
      <groupId>org.apache.olingo</groupId> 
      <artifactId>odata-commons-api</artifactId> 
      <version>${odata.version}</version> 
     </dependency> 

     <dependency> 
      <groupId>org.apache.olingo</groupId> 
      <artifactId>odata-commons-core</artifactId> 
      <version>${odata.version}</version> 
     </dependency> 

     <dependency> 
      <groupId>org.slf4j</groupId> 
      <artifactId>slf4j-simple</artifactId> 
      <version>${slf4j.version}</version> 
      <scope>runtime</scope> 
     </dependency> 

     <dependency> 
      <groupId>org.slf4j</groupId> 
      <artifactId>slf4j-api</artifactId> 
      <version>1.7.11</version> 
      <scope>compile</scope> 
     </dependency> 
    </dependencies> 
    <build> 
     <finalName>DemoService</finalName> 
    </build> 
    </project> 

这里是我的项目文件夹结构 [Project文件夹结构]

+0

您是否在执行'mvn clean compile'时出错?此外,odata-server-core工件的* runtime *作用域看起来很可疑,您确定这应该是运行时并且不是默认的吗? – user3151902

+0

Hi @ user3151902,非常感谢您的关注。因为我使用Eclipse作为我的IDE。通过右键单击pom.xml文件 - > Run As - > maven clean来清理项目。在这种情况下,我正在控制台中获得成功消息。 – arunava04

+0

确定,但* maven clean *只会删除编译的文件和其他Maven输出。你可以做*文件 - >运行为 - > Maven ... *,然后在*目标下输入'clean compile' * – user3151902

回答

0

有我的Maven的安装有问题的快照。我分别安装它,并将路径变量设置为C:\ ProgramFiles \ apache-maven-3.5.0 \ bin。确保您可以在命令提示符下运行mvn -versionhttps://maven.apache.org/install.html)。

谢谢