【问题标题】:External Jar is not visible from classes under a package从包下的类中看不到外部 Jar
【发布时间】:2019-07-01 20:22:27
【问题描述】:

我在使用 IntelliJ 运行的 maven 项目中有一个 external.jar。 我的class1 无法解析我的external.jar,直到我将其从package1 中删除。 您能否建议我通过保持文件夹结构如下来解决此类问题的最佳做法。

mvn -v : Apache Maven 3.6.0, Java version: 1.8.0_212
Folder Structure:
-src
--test

---java
----package1
-----class1
----package2

---resources
----external.jar

-target
-External Libraries

【问题讨论】:

标签: java jar package


【解决方案1】:

您将所有外部 jar 保存在 lib 文件夹下。 参考以下链接

http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#System_Dependencies

【讨论】:

  • 这个链接描述了lib文件夹在Java主目录下,不在你的项目中。
  • 是的,你是对的。请使用“lib/rt.jar”代替“${java.home}/lib/rt.jar。”所以它从你的项目文件夹中获取pom.xml 存在。
【解决方案2】:

在IntelliJ IDEA中添加外部jars的步骤如下。

  1. 单击工具栏中的文件
  2. 项目结构 (CTRL + SHIFT + ALT + S 在 Windows/Linux 上, + ; 在 Mac OS X 上)
  3. 在左侧面板中选择模块
  4. 依赖项标签
  5. + → JAR 或目录
  6. 选择您要添加的库,然后在 对话框底部

请参考 IntelliJ 官方文档this

【讨论】:

  • JAR 已经包含在这种方式中,因此,当源类没有放在包下时没有问题。当我将我的类放入一个包并尝试使用我的 jar 时,就会出现我的问题。
  • 您遇到什么错误?当你将类移动到那个包时,你重构复制了吗?
猜你喜欢
  • 2014-04-14
  • 2012-01-19
  • 2012-01-04
  • 2015-10-08
  • 2017-07-31
  • 2015-03-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多