我正在使用 IntelliJ 11.1.3,并且正在尝试以 jarfile 的形式附加两个外部库以在模块中使用。我已将它们添加到项目结构 -> 模块 -> 依赖项中,它们也正确显示在库下,但我无法在源代码中导入它们。
我在这里缺少一个步骤吗?我对 IntelliJ 还很陌生,之前专门使用过 Netbeans,所以我有点迷茫。我认为附加外部库并立即使用这些类很简单,但是当我键入“导入”时,我什至没有在代码完成时获得库名称。
我正在使用 IntelliJ 11.1.3,并且正在尝试以 jarfile 的形式附加两个外部库以在模块中使用。我已将它们添加到项目结构 -> 模块 -> 依赖项中,它们也正确显示在库下,但我无法在源代码中导入它们。
我在这里缺少一个步骤吗?我对 IntelliJ 还很陌生,之前专门使用过 Netbeans,所以我有点迷茫。我认为附加外部库并立即使用这些类很简单,但是当我键入“导入”时,我什至没有在代码完成时获得库名称。
你做得对,库是在Module Dependencies中配置的。验证那里添加了正确的文件。
您应该能够在Libraries节点下的 Project View 中浏览 jar 内部。如果您在那里看不到 jar,则说明您的库配置不正确。如果您看到罐子,但看不到其中的类,则它们可能已损坏,请将它们替换为有效副本。
还要检查这些库是否已添加到您尝试导入和使用它们的正确模块的依赖项中。验证依赖的范围,编译很可能是你需要的。
File
| 如果一切看起来都正确,但无效的缓存可能会有所帮助,但不起作用。
如果没有任何帮助,请与库共享一个示例项目来说明问题。
你正在使用一个包。这些库将从默认包中使用。因此,将所有类移动到默认包(即 src 文件夹)并删除所有包/导入语句。此外,使用 In 或 Stdin 类而不是 java.io 来读取数据。
我也遇到了这个问题,我所做的是关闭当前项目并重新创建/导入项目,然后导入 jar,它可以工作。我知道这不明智,但这是一种直接而简单的方法。当我尝试了 CRAZYCODER 所说但不起作用的所有事情时。
这是我尝试过的,它奏效了-
将 jar 添加到 Classpath 似乎有帮助。项目结构 > 平台设置 > SDKs > 类路径 单击 + 并添加 jar
如果您在 POM 中的 jar 依赖项没有范围(或者如果有,请将其更改为新的临时值),请添加一个临时值,例如“编译”。Intellij 将识别更改并刷新外部库。然后,您可以删除临时范围。
Maven项目->右键单击您的项目-> Unignore
就我而言,当我在 POM.xml 中编译 .jar 文件时,有一个代码可以生成 EXECUTABLE .jar,但是对于在其他应用程序中使用带有角色库的 .jar 必须是 NOT EXECUTABLE .jar(它没有 main.claass 等。这对我们来说不是必须的)。实际上,当我从 POM.xml 中删除此 cod 时 - 我的库开始运行良好。
--><!-- <groupId>org.springframework.boot</groupId>-->
<!-- <artifactId>spring-boot-maven-plugin</artifactId>-->
<!-- <configuration>-->
<!-- <excludes>-->
<!-- <exclude>-->
<!-- <groupId>org.projectlombok</groupId>-->
<!-- <artifactId>lombok</artifactId>-->
<!-- </exclude>-->
<!-- </excludes>-->
<!-- </configuration>-->
<!-- </plugin>-->
我遇到了同样的问题,并尝试了上面和这里提到的几乎所有解决方案。对于我们大多数人来说,提到的解决方案应该有效。
我的情况有点不同,所以想在这里提一下。
在 IntelliJ 项目 Maven 存储库设置中,我发现即使是本地 .m2 存储库也无法更新。它尝试连接localhost
,特别是在我的情况下,hosts
文件具有不同的设置localhost
。
我改变了它并开始工作,因为它现在能够连接到本地 .m2