在包中时无法从其他Maven模块中找到类 - IntelliJ

时间:2016-12-27 16:31:40

标签: java maven intellij-idea dependencies

我正在努力解决这个问题一段时间了,我在IntelliJ中有一个带有2个maven模块的maven项目。

当我在我的第二个模块的java文件夹(源根目录)中时,当我创建一个类时,我可以引用我的其他项目的类。但是当我在java文件夹中的一个包中时,我不再能够使用其他项目的类。

提前致谢,

图片链接: http://imgur.com/a/6wyYM

来自父项目的我的POM.xml:

<?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>
<packaging>pom</packaging>

<groupId>com.ucll.da</groupId>
<artifactId>project2</artifactId>
<packaging>pom</packaging>
<version>1.0-SNAPSHOT</version>

<modules>
    <module>domain</module>
    <module>webApp</module>
    <module>rest</module>
</modules>

</project>

域和其余的POM文件基本相同:

<?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">

<parent>
    <artifactId>project2</artifactId>
    <groupId>com.ucll.da</groupId>
    <version>1.0-SNAPSHOT</version>
</parent>

<modelVersion>4.0.0</modelVersion>
<packaging>jar</packaging>
<artifactId>domain</artifactId>

</project>

1 个答案:

答案 0 :(得分:0)

我找到了我的解决方案,但我现在还不知道为什么会有效。

我在第一个Maven模块(域)中的java文件不在包内,只是在地图Java中。当我在这个Java地图中创建一个新包并将所有我的java文件移动到那里时,我可以在另一个Maven模块中使用这些类。