问题标签 [module-path]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1603 浏览

java - 迁移到 Java 11:我需要帮助解决 Eclipse 中的类路径和模块路径冲突

我正在帮助将一个大型项目(Eclispe SWT,许多插件捆绑在一起作为一个项目)从 Java 8 迁移到 Java 11。

javax.xml.stream 的导入语句有问题。

将鼠标悬停在 Eclipse(版本:2019-06 (4.12.0))中的导入语句上,我收到此错误消息

谷歌搜索似乎可能是关于 javax.xml 被列在新模块路径和类路径中。

我去了有问题的项目的顶部节点,右键单击,转到构建路径>配置构建路径,模块依赖项,选择“javax.xml”并将其删除。

这自动使 8 个编译器错误消失了,但又出现了两个新错误:

我通过在模块列表中包含java.desktop 来解决这个问题,它带回了原来的 8 个错误。

我无法重做所有模块或类路径,只能修复最后一个冲突(找不到 java.awt.geom.Rectangle2D 的类文件。)。

知道如何在不破坏更多东西的情况下解决这个问题吗?

更新:我的构建路径对话框的屏幕截图

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述


编辑:

我通过使用 Ctrl Shift T 打开类型编辑器并搜索该名称找到了多余的 jar。


0 投票
1 回答
534 浏览

java - 如何在 Netbeans 中使用模块路径进行构建

目前,当我在 Netbeans 中构建我的 Java 程序时,它会要求一个类路径并希望使用一个类路径来构建。然而,与 Java 9+ 日益增长的模块化焦点保持一致,我宁愿使用模块路径进行编译。

我会运行该命令javac ... --module-path *.java,但具有复杂的依赖关系,因此如果有该选项可用,我更愿意在 Netbeans 中构建它?

0 投票
1 回答
384 浏览

java - 如何使用第三方库(jar 文件)运行 Java 模块类(java 9 jigsaw 项目)?

现在我正在尝试用纯java(没有内置脚本)开发一个Java项目。我正在实现 Java 9 中的模块概念。在运行带有附加 jar 文件(第三方库)的 Java 项目(主类)时遇到了麻烦。编译时我没有问题,但是当我尝试运行 java 时,它无法按预期运行。

我可以通过执行这个命令来编译这个项目(javaFiles.txt 包含我想要编译的 java 文件):

但是当我尝试使用此命令运行编译的 .class 文件时:

我收到这个错误,好像它是一个错误的命令:

我正在使用ubuntu。还有其他方法吗?

而且我真的不知道类路径、模块路径和其他任何东西之间的区别。我总是尝试从模块路径运行它。

我从这个链接这个链接得到了一些参考。那两个告诉我上面提到的命令。

谢谢!

0 投票
2 回答
211 浏览

java - 模块目录或模块文件内部名称应相同或不同

目录结构

成功编译生成out/calc-module目录。


模块信息.java


计算器.java

当我在以下命令中编译此模块时。
1. java -p out --add-modules calc-module com.ngsharma.ocp.Calculator 当我使用这个命令时,它抛出异常FindException : Module calc-module not found。
根据1.模块内部名称和模块目录名称应该相同,其他抛出FindException。
2 java -p out --add-modules calc com.ngsharma.ocp.Calculator
但在这种情况下,我没有使用模块目录名,我只在文件名中使用了module-info.java,并成功运行。如何..?为什么..?
模块文件名和模块文件夹名称应该相同,否则无法编译和运行它是否正确。请任何人建议我并纠正我的错误。(模块中的新手)。

0 投票
0 回答
322 浏览

eclipse - Java 无法引导路径、eclipse、jdk-13

我正在尝试更新我的 JavaFX 项目以与 JRE 13 兼容(直到现在它被设置为使用 JRE 1.8)。我正在使用 Mac 使用 Eclipse 2020-03 进行开发。

我必须处理的第一个大问题是从 JDK 1.8 中包含的 JavaFX 库迁移到必须将 JavaFX (14) 作为 JDK 13 的外部包导入。

第二个问题是从使用类路径迁移到使用模块路径。我是模块路径的新手,所以我所说的可能没有意义,但我现在的设置是这样的:

最后,现在所有的编译器错误都消失了(我不得不重新编译我下载的一些外部 .jar 文件,因此没有任何拆分包),但是当我构建和运行应用程序类时,什么也没有发生。

检查 Mac 系统控制台,以下输出似乎引用了应用程序未启动的原因,但我检查了他的 JDK 路径并且引用的java可执行文件确实存在。

这里发生了什么?如果您需要有关我的项目配置的更多信息,请发表评论,我可以添加详细信息。

0 投票
1 回答
566 浏览

maven - 默认情况下,maven 是否将所有依赖项添加到模块路径?

我读过Java 9 Modularity书:

依赖关系总是放在模块路径上,即使依赖关系还没有模块化。

[...] 为支持 Java 模块系统而对 Apache Maven 进行的最重要更改如下:

  • 在编译期间使用模块路径
  • 支持显式模块和自动模块的混合作为依赖项

我正在查看 Maven 文档,但在任何地方都找不到此信息。

默认情况下,maven 是否添加<dependencies>modulepath(仅?),如果是,在哪个 maven 版本之后?

另外,如果上述情况属实,是否有办法指示 maven 根本不使用modulepath

0 投票
1 回答
987 浏览

javafx - 每次创建新的 javafx 项目时如何避免添加 vm 参数?

我正在使用 e(fx)clipse 插件和 scenebuilder 在 STS(4.6.1) 中创建 javafx 项目。

每次创建新项目时,我都必须在运行配置中添加 VM 参数:

否则程序以错误消息结束,上面写着

我必须为每个令人讨厌的 javafx 项目执行此操作。

有没有办法一劳永逸地添加这个?

谢谢

0 投票
1 回答
231 浏览

java - 编译模块时,将非模块化 jars 添加到 -classpath 并将模块化 jars 添加到 --module-path 有什么价值?

我已经看到,在一个项目中module-info.javamaven将模块化 jars(包含module-info.class或清单属性Automatic-Module-Name)添加--module-path-classpath.

规范指出:

[...] 但是,这并不意味着命名模块中的代码可以访问未命名模块中的类型。实际上,命名模块甚至不能声明对未命名模块的依赖。这种限制是故意的[...]

据我所知,来自类路径的非模块化 jar 的包被添加到未命名的模块中。

由于不允许模块化项目源访问未命名模块的类型,在上述情况下添加任何 jar 的目的是什么?-classpath

0 投票
1 回答
78 浏览

python - 在python中,是否可以从被调用的文件中获取被调用的路径?

我想从 ./ 调用 config.py,但我希望 config.py 能够识别它所在的路径(“./second/config.py”)

我想从“./”调用 c​​onfig.py,我希望 config.py 能够识别和读取 file.json,但我不想发送任何路径作为参数,也不想将“./second”附加到 sys.path。有没有一段代码可以让 config.py 识别它的相对路径,并通过这种方式把这个路径加入到 json 的文件名中并读取它?

我在 config.py 上试过这个

但是,它返回

我期待它回来

0 投票
0 回答
36 浏览

java - 自动确定在 Classpath 和 Modulepath 上放置什么?

我有一个包含 JPMS 模块和老式非模块化 jar 文件的应用程序。我不想将所有的 jars 都放在类路径中,因为这样我就会失去一些嵌入到模块中的特定功能(例如 JPMS 服务提供者接口)。我也不能把老式的 jars 作为自动模块放在模块路径上,因为它们有很多包名冲突。

解决方案是同时使用模块路径和类路径。我可以手动定义我的类路径和模块路径的内容,但是如果依赖项随新版本发生变化,这很可能会中断。因此,这确实需要自动完成,我已经看到这实际上是在运行单元测试时使用 maven-surefire 以及在从 IDE 启动应用程序时使用 eclipse 完成的。

有谁知道是否有一个现有的库(或者最好是 maven 插件)允许我以与surefire或eclipse相同的方式分离可以在模块路径上的依赖项和必须在类路径上的依赖项?