【发布时间】:2012-04-03 00:27:33
【问题描述】:
[已关闭 - 我必须将类从 test/java 移动到 main/java 并通过 IDE“maven 选项”更新 maven 存储库]
我是 maven 新手,对 java 开发缺乏经验。我正在使用 IntelliJ Idea 作为 IDE。我正在使用 Maven 3.0.4。
我创建了一个“项目 A”和一个“项目 B”,每个项目都有一些类。现在,当我尝试在 project A 中创建对 project B 中的类的依赖项时,我似乎找不到任何属于 project B。当我检查 maven 存储库时,我可以看到一个 .jar 文件是基于 project B 创建的。
澄清一下:向项目B添加依赖项时,我确实找到了一个名为“项目B”的工件,但我无法找到任何类项目 B 的一部分。
我似乎无法访问和使用属于 project A 内的 project B 一部分的任何类,这会使安装变得毫无价值。 p>
--
请告诉我我应该提供哪些信息来帮助我解决这个问题。
[EDIT] 这是 project A 的 pom,它依赖于 project B。但是我要么不明白如何在我的项目中使用它,要么它不起作用。虽然我可以使用 IntelliJ 的功能来查找和添加工件,但 intelliJ 似乎找不到任何属于 project B 的类(虽然它确实找到属于其他预定义包的类在 Maven 存储库中):
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>planet</groupId>
<artifactId>planet</artifactId>
<version>1.0</version>
<dependencies>
<dependency>
<groupId>toolbox</groupId>
<artifactId>toolbox</artifactId>
<version>1.0</version>
</dependency>
</dependencies>
</project>
【问题讨论】:
-
poms,至少是相关部分(例如,至少是工件信息,以及 A 对 B 的依赖)。您如何添加依赖项。当您说“找不到属于项目 B 的任何类”时是什么意思。
-
A 对 B 的依赖还没有在 pom 中退出。这是我正在努力实现的目标。 IntelliJ 具有添加依赖项和按工件或类搜索的功能。这就是我所说的“找不到任何属于 project B 的类”。
-
添加依赖即可;我不知道它是如何进行类搜索的——查看文档。
-
当你在命令行执行
mvn clean install会说什么? -
执行 mvn clean install 帮助我解决了问题。它是成功的,但似乎我忽略了一个警告,即没有要编译的类并且 jar 文件为空。问题是我把我的类放在 test/java 而不是 main/java 中。更新存储库后,我能够找到 project B 类并使其全部正常工作。这很愚蠢,但这确实帮助我找到了答案。在命令行中运行它让我注意到了我在 IDE 中忽略的内容。
标签: java maven jar intellij-idea dependencies