首页 > 解决方案 > 可以从多个模块访问包 ***

问题描述

我在 Ubuntu 19.10 上使用 Visual Studio Code 1.4.3 和 Maven 3.6.3 和 GraalVM graalvm-ce-java11-20.0.0。我的java项目的静态分析给了我这个错误:

The package org.graalvm.polyglot is accessible from more than one module: <unnamed>, org.graalvm.sdk

我不知道哪个包确实<unnamed>指代以及在哪里解决“双重导入”问题。

注意:如果我直接使用终端编译我的项目,则不会发生此错误mvn,但这实际上似乎是 javac 编译器的错误,请参阅此问题

更新org.graalvm.polyglotVisual Studio Code 在我从其中导入某些内容(例如, ) 的每个源文件中都会引发上述错误,import org.graalvm.polyglot.Value;并且我的$CLASSPATH变量当前为空。

更新 目前在pom.xml我有

<dependency>
  <groupId>org.graalvm.sdk</groupId>
  <artifactId>graal-sdk</artifactId>
  <version>${graalvm.version}</version>
</dependency>
<dependency>
  <groupId>org.graalvm.truffle</groupId>
  <artifactId>truffle-api</artifactId>
  <version>${graalvm.version}</version>
</dependency>-->

通过反复试验,我发现我需要删除这两个依赖项才能消除上述错误,但这样我会得到内部任何内容的导入错误com.oracle.truffle(例如,The import com.oracle.truffle.api cannot be resolved

更新mvn clean package install -DskipTests从终端运行编译项目没有任何抱怨。

标签: javamavenvisual-studio-codegraalvm

解决方案


推荐阅读