栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在Java 9运行时访问javax.annotation.Resource

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在Java 9运行时访问javax.annotation.Resource

只是为了消除一些混乱。您在问题中陈述的工作方式是替代方式,不应像您已经看到的那样结合使用。

未命名模块从java.xml.ws.annotation和java.annotation中都读取包javax.annotation


因此,它的工作方式是:

您可以使用编译器args添加模块

<plugin>    <groupId>org.apache.maven.plugins</groupId>    <artifactId>maven-compiler-plugin</artifactId>    <version>3.7.0</version>    <configuration>        <release>9</release>        <compilerArgs> <arg>--add-modules</arg> <arg>java.xml.ws.annotation</arg>        </compilerArgs>    </configuration></plugin>

要么

当您可以使用依赖项时,请使用

javax.xml.ws.annotation
成为可升级模块

<dependency>    <groupId>javax.annotation</groupId>    <artifactId>javax.annotation-api</artifactId>    <version>1.3.1</version></dependency>

理想情况下,这是一个比较可取的选择,因为前者只是使用@Deprecated模块的替代方法

forRemoval


因此,仅需要的子句不足以访问模块…对于所有JDK提供的模块(不包括java.base),这是正确的,还是仅对不赞成使用的模块正确?

不,这

requires
只是声明的一部分。[考虑一下,在JDK 9之前,如果您
importsome.foo.bar;
在类中使用了没有添加为库(classpath)的语句,那会行得通吗?]。标记为必需的模块必须位于模块路径上才能访问。


更新 -使用JDK / 11或更高版本将不再支持第一个选项,其中以删除Java
EE和CORBA模块
的JEP为目标。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/393571.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号