【问题标题】:org.apache.olingo path is not resolved even after downloading the dependencies即使下载了依赖项,org.apache.olingo 路径也没有解析
【发布时间】:2018-01-25 17:06:04
【问题描述】:

我正在尝试使用 apache olingo V4 (https://olingo.apache.org/doc/odata4/tutorials/read/tutorial_read.html) 创建 OData 服务

但是当我通过继承包 org.apache.olingo.commons.api.edm.provider 的类 CsdlAbstractEdmProvider 来创建 Edm(实体数据模型)提供程序类时 strong> (https://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>

这是我的项目文件夹结构的快照 [项目文件夹结构]

【问题讨论】:

  • 你在做mvn clean compile的时候是不是也报错了?此外,odata-server-core 工件的 runtime 范围看起来很可疑,您确定这应该是运行时而不是默认值吗?
  • 您好@user3151902,非常感谢您的关注。因为我使用 Eclipse 作为我的 IDE。我通过右键单击 pom.xml 文件 -> 运行方式 -> maven clean 来清理项目。在这种情况下,我会在控制台中收到成功消息。
  • OK,但是 maven clean 只会删除已编译的文件和其他 Maven 输出。你可以做File -> Run as -> Maven... 然后在goals下输入clean compile
  • 关于 odata-server-core - 因为我指的是来自 apache olingo 官方网站的教程,所以我只是假设一切都是标准的和最新的。所以我避免对 pom.xml 文件进行任何更改。无论如何,我是使用 olingo 和 maven 框架的新手。因此,如果需要任何修改,请提出建议。
  • 完成clean compile 但没有效果。

标签: java rest maven odata olingo


【解决方案1】:

我的 maven 安装有问题。我单独安装并将路径变量设置为 C:\ProgramFiles\apache-maven-3.5.0\bin。确保您可以在命令提示符下运行mvn -version (https://maven.apache.org/install.html)。

谢谢

【讨论】:

    猜你喜欢
    • 2014-01-13
    • 2017-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-30
    • 2014-02-21
    • 1970-01-01
    相关资源
    最近更新 更多