java - Maven 多模块项目和自定义 JRE

标签 java eclipse maven

我在构建 Maven 多模块项目时遇到问题。我有一个自定义 JRE,它作为系统库添加到父级。当我尝试构建子模块时,他们没有从自定义 JRE 中找到 jar。我应该以某种方式将此自定义 JRE 作为依赖项添加到父模块的 POM 中,或者配置它的正确方法是什么?

Picture of this project's setup

最佳答案

JRE 和 Maven 依赖项是两个不同的东西,请确保不要混淆它们。 Maven 无法更改 JRE,因为在执行 Maven 的第一个字节代码时,JRE 已经处于 Activity 状态(它正在执行 Maven)。

现在解决您的问题。

在命令行上,使用环境变量 JAVA_HOME 告诉 Maven 使用哪个 Java 运行时。

在 Eclipse 中,当您使用菜单项之一启动 Maven 时,您必须使用“Run -> Run as -> Maven build...”。对话框中的第二个选项卡显示“JRE”。在这里,您可以选择要使用的 JRE。

如果您有现有条目,则可以在“启动配置”对话框(运行/调试菜单和弹出窗口中的最后一个条目)中编辑它们。

最后,请确保您为 Maven 提供了完整的 SDK;如果您需要编译 Java 代码,纯 JRE 是不够的。 Java 编译器位于普通 SDK 的 lib/tools.jar 中。

关于java - Maven 多模块项目和自定义 JRE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26278815/

相关文章:

java - J脸/SWT : What is the best way to add a toolbar with Commands to a Section?

java - 打开 Eclipse 时缺少 M2_REPO 类路径变量

java - Spring Websocket升级请求处理

java - 我应该在哪里为我的 Java 应用程序指定 native 库?

java - Eclipse 无法识别显示对象

eclipse - 为什么 eclipse View 有时是空的?

java - 同一项目中的 Spring Boot Basic Authentication 和 OAuth2?

maven - Java Maven 项目中的 Docker 指令跳过测试

java - 双零移动到后面的比较器

java - 在java中将保存文件存储在本地机器上的位置