在Eclipse中解析Maven依赖项的类别

时间:2018-06-26 06:54:23

标签: java eclipse maven jibx maven-jibx

请考虑以下依赖关系层次结构:

maven dependency hierarchy

现在我在项目maven-jibx-plugin中有D,该项目在target/classes文件夹中生成了已编译的类。但是,当我运行自己的spring-boot项目A时,无法解析项目D生成的类。 还从项目A的maven首选项中检查了来自工作区的依赖关系解析

2 个答案:

答案 0 :(得分:0)

在我看来,Eclipse和Maven无法将项目D识别为相关项目。

有两种可能的解决方案:

  • 在Eclipse中,您可以将项目D作为从属项目添加到项目A的构建路径。转到项目的属性对话框。选择 Java构建路径,然后切换到 Projects 标签。在那里,您应该添加项目D。

  • 或者,您依赖于Maven的依赖管理。因此,您必须向项目A的POM文件添加依赖项。首先将<dependency>(如果尚未完成)添加到<dependencies>部分。 现在是重要的部分!如果您已经在本地maven存储库中安装了已编译的maven工件(jar文件),则Maven只能解决此依赖性。在外壳上,切换到项目D的目录,然后运行mvn install

我希望能达到目的。

答案 1 :(得分:0)

您是否尝试过将生成的源文件夹添加为Eclipse中的源文件夹?您可以从eclipse中执行此操作(右键单击生成的源或其中的任何文件夹>构建路径>用作源文件夹),也可以通过在pom.xml中添加以下内容来使用maven构建帮助器插件

        <!-- MAVEN ADD GENERATED-SOURCES TO CLASSPATH -->
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>build-helper-maven-plugin</artifactId>
            <version>${maven.plugin.build-helper.version}</version>
            <executions>
                <execution>
                    <phase>generate-sources</phase>
                    <goals>
                        <goal>add-source</goal>
                    </goals>
                    <configuration>
                        <sources>
                            <source>target/generated-sources/annotations</source>
                        </sources>
                    </configuration>
                </execution>
            </executions>
        </plugin>