java - Maven 构建显示编译错误,但 Eclipse 没有

标签 java eclipse maven

我遇到了 Maven 的一个奇怪问题,寻求帮助。我的 Maven pom 看起来像这样:

<dependency>
   <groupId>org.eclipse.californium</groupId>
   <artifactId>californium-core</artifactId>
   <version>1.0.0-SNAPSHOT</version>
   <scope>test</scope>
</dependency>

并像这样添加存储库:

<repositories>
    <repository>
        <id>repo.eclipse.org</id>
        <name>Californium Repository</name>
        <url>https://repo.eclipse.org/content/repositories/californium/</url>
    </repository>
</repositories>

Java 类如下所示:

import org.eclipse.californium.core.CoapResource;
import org.eclipse.californium.core.CoapServer;
import org.eclipse.californium.core.server.resources.CoapExchange;

public class Hello extends CoapServer {
   //Code here
}

问题是 Eclipse 没有抛出任何错误,但是当我尝试从 eclipse 运行 maven build 时,我不断收到很多这样的编译错误:

[ERROR] D:\Pradeep\Workspaces\coap\CoapServer\src\main\java\com\pradeep\coap\server\CoapServer\CoapProxyServer.java:[3,35] error: package org.eclipse.californium.core does not exist

我通过删除 dependency 标记验证依赖项是否正确下载,然后即使 eclipse 也会抛出错误,所以我认为这意味着依赖项已正确下载(我还在 eclipse 的 Maven 依赖项中看到了 jar 文件)。我在运行构建时遇到了这个问题。任何人都可以指导我吗?

最佳答案

您的 Hello 类位于您的源文件夹中,而您在范围 test 中定义了依赖项。要么将您的类移动到 src/test/java 我们将您的依赖项更改为不是测试依赖项。

Eclipse 无法区分作用域并将所有内容放在整个模块的类路径中,而不管定义的作用域如何。

关于java - Maven 构建显示编译错误,但 Eclipse 没有,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31739409/

相关文章:

java - 并行运行 Selenium 测试时出现 TimeoutException

java - 当计算机在 hibernate 后唤醒时计划任务运行数千次

java - 没有 fragment 的Facebook android sdk登录按钮

java - Eclipse 在创建新的 android 项目时崩溃

java - 如何将 pom.xml 添加到现有的 Eclipse 项目?

java - 在 Eclipse 中同时构建和上传

java - BrowserMob 代理 - WebDriver/错误 : The proxy server is refusing connections

java - JSoup - 通过标签/数组递增

android - Android Studio的“Unable to resolve superclass/Link of class failed”错误

java - 当找不到 Maven->Update Project/MANIFEST.MF 文件时停止 Eclipse 重置根上下文