问题标签 [jdeps]

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 投票
1 回答
7010 浏览

java - 生成模块信息 jdeps 时缺少依赖项

我正在尝试使用以下命令运行 jdeps:

我的com.demo.market.jar依赖于应用程序模块和自动模块。我将所有依赖项放在“模块”文件夹中,但出现错误:

但是当我添加--add-modules它工作正常。

难道我做错了什么?我认为 jdeps 会找到所有模块,而不是手动添加它们。

0 投票
2 回答
11657 浏览

jar - 在 java 9 中使用 jdeps 为自动模块创建模块信息

我有 3 罐杰克逊图书馆

  1. 杰克逊核心-2.8.10.jar
  2. 杰克逊注释-2.8.0.jar
  3. jackson-databind-2.8.10.jar

我成功地为 core 和 annotation 创建了 module-info.java,并使用 jdeps 将它们转换为 Named maodule。

对于 databind ,我尝试了以下命令:

jdeps --generate-module-info 。--module-path %JAVA_HOME%\jomds;jackson.core;jackson.annotations existingmods\jackson-databind-2.8.10.jar

现在发生以下错误:

如何为 jackson-databind 生成 module-info.java ?

0 投票
2 回答
2278 浏览

java - Jdeps 和 Jdeprscan 有什么区别?

在 Java 9 中引入了一个新工具 jdeprscan,它与现有的 jdeps 工具非常相似。

据我了解,jdeprscan 的主要动机是利用 Deprecated 注释的“for-removal”和“release”属性。

这个工具有没有其他使用JDeps无法执行的场景或用法?

0 投票
0 回答
158 浏览

java - Jdeps 没有引用环境变量来执行

我的系统中配置了多个 JDK,即 JDK 8、9 和 10(早期访问)。我需要执行 JDK 9 中可用的 Jdeps 工具,但是在发出jdeps -version命令时,JDK 8 中可用的工具正在执行。

我将环境变量PATHJAVA_HOME环境变量正确设置为 JDK 9 路径。当我发出java -version命令时,它会显示 JDK 9 版本,但令人惊讶的是 jdeps 并没有以这种方式运行。

有人可以告诉我如何jdeps在 JDK 9 中执行吗?

到目前为止失败的尝试:

  1. PATH&JAVA_HOME设置为 JDK 9
  2. < JDK9 >/bin从目录执行命令

现在完全删除 JDK 8,对我来说不是一个选择

截图 FYR

  1. pwd: 我目前在 JDK 9 的 bin 目录中
  2. JAVA_HOME: 指向 JDK 9
  3. PATH: 我故意跳过了这里的 JDK/bin 目录,以证明路径不指向任何其他 JDK 版本
  4. java -version:因此证明PATH引用了其他java版本
  5. 添加jdk(9)/binPATH
  6. java -version:我们可以看到正在使用JDK 9。添加到 PATH 的最新值也很好
  7. jdeps -version: 麻烦来了!它是 jdeps 使用的 JDK 8
0 投票
0 回答
90 浏览

java - 识别通过反射使用的内部 API

我正在研究一个遗留代码库,它最初是用 JDK 1.1.6 编写的。因此,有许多使用内部 JDK API的实例,尤其是在 RMI 和 Socket 编程领域。

我需要识别并创建在我的代码库中使用的这些内部 API 的列表。

我知道jdeps -jdkinternals可以解决我的目的,是的,这个命令在很大程度上帮助了我

不幸的是,在通过反射使用内部 API 的地方,这种方法对我不起作用。

除了暴力文本搜索之外,我可以在这种情况下使用任何(有效的)方法吗?

0 投票
0 回答
228 浏览

java - 在 Java 中使用来自 jdeps 的类依赖分析

我编写了一个需要使用jdeps. 我可以将其称为进程并解析命令行输出,但作为jdepsJava 工具,我更愿意使用 Java 方法。

JRE/JDK 是否提供这些 jar/class 分析方法?

0 投票
1 回答
491 浏览

java - 通过Java从.class文件中获取ByteCode(依赖)信息

我想分析.class文件并获取有关哪个类使用哪个其他类的信息。

jdeps是一个命令行工具,它允许您在控制台中显示一些信息,但我想避免调用外部工具并抓取命令行输出。

0 投票
2 回答
782 浏览

java - 对具有多版本实现的模块使用 jdeps,但根模块没有

如果当前模块具有多版本依赖关系,则不太确定如何使用 jdeps 来检查模块。

jdeps 一直要求我提供--multi-version 9,但其他依赖模块不是多版本的。在这种情况下如何正确使用 jdeps?

命令:

错误:jaxb-api.jar 是多版本 jar 文件,但未设置 --multi-release 选项

命令:

jdeps - 来自 JDK11 命令的早期访问:

0 投票
1 回答
5499 浏览

java - 将 jlink 与自动模块一起使用

我有一个依赖于自动模块的显式模块化项目;例如在 java.activation 上。仍然可以使用jlink吗?

请参阅此模块信息.java:

那么jlink无法添加模块:

据我了解,自动模块无论如何都会包含整个类路径。所以我想用 jlink 创建运行时映像没有任何好处?

另请参阅:什么是自动模块?

有没有可能规避这个问题?也许为这些依赖项生成一个 module-info.java ?

0 投票
1 回答
137 浏览

java - 从 Maven (jdeps) 内部获取类级别的依赖项

应用jdeps -v到 jar 列出了该 jar 的所有类级别依赖项,即您的哪些类使用了其他类。

我想在构建过程中提取相同的信息。因此,我想编写或配置一个 Maven 插件,该插件会遍历*.class构建生成的所有文件并输出使用的类。

我怎样才能做到这一点?