包 javax.jnlp 在模块 java.jnlp 中声明,该模块不在模块图中 [英] package javax.jnlp is declared in module java.jnlp, which is not in the module graph

查看:55
本文介绍了包 javax.jnlp 在模块 java.jnlp 中声明,该模块不在模块图中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个使用 Java webstart 技术的项目.我决定将Java版本从8升级到9.但是,我在编译时遇到了以下错误:

I have a project that uses Java webstart technology. I decided to upgrade the Java version from 8 to 9. However, I faced the following error on compiling:

error: package javax.jnlp is not visible
import javax.jnlp.DownloadServiceListener;
        ^
(package javax.jnlp is declared in module java.jnlp, which is not in the module graph)

我尝试将 C:\Program Files\Java\jdk-9\lib\javaws.jar 包含到类路径中,但仍然存在相同的问题.

I tried to include C:\Program Files\Java\jdk-9\lib\javaws.jar to the classpath, but still the same issue remains.

推荐答案

看起来 java.jnlp 默认没有解析类路径上的代码(很像 Java EE 模块).解决方案是使用 --add-modules java.jnlp 显式添加它(javacjava 都接受该参数).

It looks like java.jnlp is not resolved by default for code on the class path (much like Java EE modules). The solution is to add it explicitly with --add-modules java.jnlp (both javac and java accepts that parameter).

JEP 261:模块系统中讨论了此选项或在 这篇博文.

这篇关于包 javax.jnlp 在模块 java.jnlp 中声明,该模块不在模块图中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆