gpt4 book ai didi

java - java 9 和 maven 的 Eclipse 问题

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:24:38 25 4
gpt4 key购买 nike

我安装了版本:Oxygen.1a Release (4.7.1a) Build id:20171005-1200 支持 Java 9。

在 eclipse.ini 上使用建议的配置

-vm
C:\Program Files\Java\jdk-9\bin\javaw.exe
--add-modules=ALL-SYSTEM

我是用java 9开发的(java 9模块化)code项目从 eclipse 测试依赖注入(inject)作为纯 Java 项目,但是当我从 eclipse 集成运行我的 Maven 时,我系统地得到以下错误

Error occurred during initialization of boot layerjava.lang.module.FindException: Module com.my.module.hello.test not found

唯一的解决办法是添加虚拟机参数

--module-path target/classes;../my-module-api/target/classes;../my-module-it/target/classes --module com.my.module.hello.test/com.my.module.hello.Reflection

enter image description here

确实,如果向 Vm 参数添加我在加载期间可以看到的详细参数

... [0.694s][info][class,load] java.lang.NamedPackage source: jrt:/java.base [0.697s][info][class,load] com.my.module.hello.MyHello source: file:/C:/Users/212442540/workspace-training/my-module-prj/my-module/target/classes/ [0.698s][info][class,load] java.lang.module.ModuleDescriptor$$Lambda$24/2114889273 source: java.lang.module.ModuleDescriptor ...

当我删除“--module-path”参数时,这一行消失了。

注意:Eclipse 在编译或编辑过程中是可以正常工作的。查看完成等..

enter image description here

我也为我的项目添加了 modpath 依赖项

强制依赖项目配置

我在项目配置中手动添加了依赖项 enter image description here

看来Eclipse是可以编译java 9模块的,但是如果和maven集成就不能运行模块了。

强制依赖 Configratin Run我还手动添加了依赖项 enter image description here图1

但 Eclipse 继续删除它们。

之前:

manually

图 2

运行 eclipse 后恢复:

after save图 3

如果与 maven 集成,eclipse 似乎系统地重置了配置。

最佳答案

我可以重现你的问题,它看起来像是 M2Eclipse 的错误.

Please report it to Eclipse . Bug 526838 - Eclipse wrong Module dependencies on Run configuration when integrated with maven

作为解决方法使用外部工具配置而不是 Java 应用程序运行配置:

  1. 运行 > 外部工具 > 外部工具配置...
  2. 选择程序并点击左上角的新启动配置图标
  3. 输入以下值:

    位置:C:\windows\system32\cmd.exe

    工作目录:${workspace_loc:/my-module}

    参数:

    /C java
    -p target/classes;../my-module-api/target/classes;../my-module-it/target/classes
    -m com.my.module.hello.test/com.my.module.hello.Reflection

  4. 点击运行

关于java - java 9 和 maven 的 Eclipse 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47109949/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com