繁体   English   中英

在Java11模块中使用@PostConstruct或@PreDestroy

[英]Using @PostConstruct or @PreDestroy in Java11 module

我正在为Java11实现模块,并希望使用JSR250中的注释(javax.annotation.PostConstruct和javax.annotation.PreDestroy)。

我已经从以下位置更改了依赖项:

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

对此:

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

该工件javax.annotation-api-1.3.2.jarMETA-INF/MANIFEST.MF包含以下行:

Automatic-Module-Name: java.annotation

因此,我尝试将其添加到我的module-info.java文件中:

  requires java.annotation;

但是,我收到此导入错误:

import javax.annotation.PostConstruct;

错误消息是:

The type javax.annotation.PostConstruct is not accessible

我已经研究了以下相关问题,但仍然无法解决我的问题:

该错误仅在Eclipse中发生。 事实证明,其他不相关的编译错误会导致Eclipse产生一些副作用。 解决这些问题并刷新和清理项目后,所描述的错误神奇地消失了。 特别感谢@howlger和@Naman为我指出正确的方向。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM