【问题标题】:Eclipse IDE does not run Java application after modification of module name修改模块名称后 Eclipse IDE 不运行 Java 应用程序
【发布时间】:2023-03-19 06:15:02
【问题描述】:

我使用以下 module-info.java

在 Eclipse 版本:2020-09 (4.17.0) 中实现了 Java 9“Hello World”程序

module org.example.test { }

然后我修改了 module-info.java 从而更改了应用程序的模块名称:

module org.example.modified { }

当我使用修改后的 module-info.java 和 Run As -> Java Application 启动应用程序时,我收到以下错误消息:

启动层初始化时出错 java.lang.module.FindException:找不到模块 org.example.test

在显示 Eclipse 用来启动应用程序的命令行后(通过运行方式->运行配置->显示命令行)我得到了以下信息:

C:\Program Files\Java\jdk-15.0.1\bin\javaw.exe -Dfile.encoding=Cp1252
-p "D:\Test\bin" -m org.example.test/org.example.Start

很明显模块名没有在命令行中更新。

关于如何在模块名称更改后正确更新命令行/运行配置的任何提示?

【问题讨论】:

  • 只需重建/编译项目。这没有帮助吗?
  • @Naman:不。顺便说一句:当我使用修改后的模块名称从命令外壳启动它时,它会运行。

标签: java eclipse java-module


【解决方案1】:

似乎是 Eclipse 中的错误,运行配置未使用新模块名称更新。

两种解决方法:

  • 删除运行配置,再次执行Run As > Java Application

    如果您没有自定义运行配置,最简单的解决方案。

  • 编辑运行配置:

    • 更改 Main class 名称,例如在末尾添加X
    • 点击Apply保存更改。
    • 点击Search并选择班级。
    • 点击Apply保存更改。

    似乎对我有用。

【讨论】:

  • 这不是人们对 IDE 的期望。像this 这样的简单重建,也许(不是非常亲身体验 Eclipse)是有意义的。
  • @Naman 你需要帮助来提供补丁吗?
  • @howlger 我可能会尝试一下。 (虽然老实说,我自己什至不喜欢使用 eclipse 进行开发),你说什么,从哪里开始?然后是协议(如果有的话)(虽然还不确定)。
  • 我已经删除了我 8 秒后的答案。如果您愿意,可以使用 Ctrl 作为快捷方式添加提示;不需要第一个Apply
  • @Naman 酷!在Eclipse Installer切换到Advanced Mode,在第一页选择Eclipse IDE for Committers,在第二页JDT 你就可以开始编码了。
猜你喜欢
  • 1970-01-01
  • 2012-12-22
  • 2020-07-16
  • 1970-01-01
  • 2015-03-06
  • 1970-01-01
  • 2021-12-31
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多