Maven / IntelliJ导入错误:io.vertx.core不存在

时间:2015-05-30 00:45:56

标签: java maven intellij-idea maven-3 vert.x

我正在尝试使用IntelliJ(w / maven)

编译vertx库

我很难让maven识别/下载vertx依赖项,但我能够通过命令行下载和安装vertx库来解决依赖性问题。现在我不再遇到vertx依赖项的问题,当我在IntelliJ中检查项目依赖项时,它有正确的路径并且没有显示任何错误。 项目结构中的maven库'正确显示并且我已经检查了.jar和.java文件的目录,它们都在那里。

我还将我的maven主目录设置为全新的maven安装: C:/ Program Files / apache-maven-3.3.3 和设置文件到正确的文件: C:\用户[用户]的.m2 \ settings.xml中 和本地存储库(maven已经安装了必需的库) C:\用户[用户]的.m2 \库 这些目录与我已经安装的库以及似乎正常工作的maven目录排成一行(在我重新安装库并重置缓存之前,那里的红线很少)

但是,我仍然无法使用vertx库。

此外,这段代码正在处理朋友的mac,但是我正在运行Windows并且似乎无法编译它(java包不存在错误)。

2 个答案:

答案 0 :(得分:1)

我可以通过转到文件 - 项目结构 - 添加库 - Maven来安装Maven模块,然后用Google搜索模块的名称(它是io.vertx:vertx-core - io.vertx.core我没有把它搞砸了。我能够使用Maven完全安装它并将其作为IntelliJ中的依赖项添加。 HTH。

答案 1 :(得分:0)

所以我花了很长时间,但我想出来了。

这是一个缓存问题,而且IntelliJ没有意识到我正在使用maven导入快照库。

1:由于某种原因,vertx下载网站所拥有的settings.xml文件没有启用快照,但是(根据我的理解)他们系统的最新版本是maven不时更新的快照。如果未启用快照,则maven intelliJ不会更新/识别库。即使我使用mvn install安装了库,也会发生这种情况。 settings.xml应如下所示:

  <profiles>
    <profile>
      <id>allow-snapshots</id>
      <activation><activeByDefault>true</activeByDefault></activation>
      <repositories>
        <repository>
          <id>snapshots-repo</id>
          <url>https://oss.sonatype.org/content/repositories/snapshots</url>
          <releases><enabled>false</enabled></releases>
          <snapshots><enabled>true</enabled></snapshots>
        </repository>
      </repositories>
    </profile>
  </profiles>

2:在我修复了上述问题之后,我仍然遇到了同样的问题,直到我删除了之前使用maven安装的本地缓存库(/user/.m2/repositories)。出于某种原因,intelliJ不会认出它们。删除后,maven / intelliJ重新加载它们,然后从那一点开始识别它们。