【问题标题】:Eclipse - module not found when adding module-info.javaEclipse - 添加 module-info.java 时找不到模块
【发布时间】:2017-11-27 12:48:10
【问题描述】:

我在 Eclipse 中有一个简单的 hello world 项目,我想用 java 9 运行。当我没有 module-info.java 文件时程序运行,但是当我添加该文件时,我收到以下错误:

Error occurred during initialization of boot layer
java.lang.module.FindException: Module modulefinder not found

复制步骤
1.新建一个maven项目
2. 将编译器和构建路径 jre 更改为 9
3. 自动生成module-info.java
4. 如果 eclipse 报错,将 junit 中的 junit 依赖更新到 4.12
5.运行项目

这是与 Eclipse 相关的问题,还是我在运行项目时遗漏了什么?

我使用的 Eclipse 版本是 Oxygen.1a Release (4.7.1a)

【问题讨论】:

  • modulefinder 是模块的名称?
  • @nullpointer 是的。顺便说一句,我尝试进行 maven 安装并像 .\java.exe -cp c:\pathtojar\myjar.jar package.App 这样从控制台运行它,这很有效。所以我猜它与日食有关?
  • @nullpointer Intellij 也可以。我猜eclipse对于相对较新的java还有一些问题。

标签: java eclipse java-9 java-platform-module-system


【解决方案1】:

根据 intellij 输出找到答案:) 我必须将类的位置添加到运行配置中的 vm 参数以及主模块名称/路径。如下所示。有关-m-p 的更多信息,请参阅java -help 命令

【讨论】:

  • Made a similar answer 与默认类路径与 IDE 执行的模块路径有关。不确定这是否可能是重复的。
  • @nullpointer 嘿,我阅读了您的答案,它看起来与我所拥有的非常相似。所以我同意它是重复的。 offtopic -> 我想我现在会使用 Intellij,因为它似乎对 java 9 有更好的支持@the moment
  • @nullpointer 即使它是重复的,我认为不删除这篇文章会很有用,因为这可能会帮助那些在这个 Eclipse 版本中遇到同样问题的人。另一篇文章与日食无关。因此,直到问题在 Eclipse 中得到解决,才能让这个问题继续存在?
  • 这看起来像m2e bug 525251。请使用指向您的问题的链接添加对此错误的评论或创建新的错误报告。如果您想分享启动配置,请将-p C:\Users\gert.kommer\eclipse-workspace91java\tes2\target\classes 短至-p ${workspace_loc:tes2}/target/classes
  • 仅供参考,其他相关增强请求是:bug 525253bug 520713
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-05-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-18
相关资源
最近更新 更多