当前位置: 首页 > 知识库问答 >
问题:

Intellij:如何添加java.annotation模块javax.annotation.PostConstruct

汪阿苏
2023-03-14

我将项目使用的SDK升级为Java10。以下导入语句导致错误:

导入javax.annotation.PostConstruct;

包的javax。注释“在模块”java中声明。xml。ws。注释',但模块“应用程序”不读取它

点击ALT ENTER让Intellij修复它,我收到以下选项:

我选择了添加Maven依赖...,然后将以下依赖项添加到pom.xml.

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

查看新添加的JAR清单。MF,我注意到模块的名称是java。注释。

所以我添加了需要java.annotationmodule-info.java.

module application {
    requires java.annotation;
}

当我CTRL点击需要java.annotation

Intellij已正确导航到JAR:

看来我的模块名是正确的,javax。注释:javax。注释api可用于我的模块。不幸的是,importjavax上的错误。注释。施工后并未消失。为了确认我的模块描述符工作正常,我添加了其他指令,所有指令都工作正常。我还添加了指令需要java。xml。ws。注释

这使得import语句错误消失了,但是,当然,这并不像java那样是一个令人满意的解决方案。xml。ws。注释已弃用并标记为删除。

关于如何解决这个问题有什么想法吗?我需要能够使模块java。注释可用于模块应用程序,根据我在这里、这里和这里读到的内容,方法是向模块路径添加一个JAR,根据我在这里读到的内容,新添加的模块必须通过模块信息中的指令引用。JAVA

共有1个答案

席乐童
2023-03-14

IntelliJ IDEA的问题是它知道JDK/jmods/java.xml.ws.annotation.jmod中的模块,即使在运行时它将被禁用。只需在IntelliJ IDEA项目结构中的JavaSDK定义中注释掉java.xml.ws.annotationjmod。

添加Maven依赖项:

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

模块信息相关性:

requires java.annotation;

就像你已经做的那样。

然后,停止IntelliJ IDEA,转到IntelliJ JDK配置文件(即C:\Users\your_NAME\.IntelliJ2018\config\options\JDK.table.xml并用java.xml.ws.annotation.jmod引用注释掉该行:

<!-- <root url="jrt://C:/Java-Training/JDK!/java.xml.ws.annotation" type="simple" /> -->

IntelliJ将不再看到java。xml。ws。注释。重启后,一切都会好起来。

 类似资料:
  • 问题内容: 使用IntelliJ 2016.2。 使用Gradle 2.14.1 我有2个项目,每个项目都有自己的build.gradle文件和单独的目录结构: 希望您能明白。在IntelliJ中,我具有以下相同级别的模块结构(无子项目): 简单的请求…我想在应用程序内使用。我要在同一个项目中同时开发两个模块。 我尝试在IntelliJ中为添加模块依赖关系。没有骰子。我尝试添加一个jar参考,没有

  • 使用IntelliJ 2016.2. 使用Gradle 2.14.1 我尝试为Intellij中的添加一个模块依赖项到。没有骰子。我试着添加一个jar引用,没有骰子。 我认为我需要在build.gradle文件中添加一个依赖项,但不知道如何添加。我尝试了等。

  • 问题内容: 有人可以告诉我如何在最新版本的Python上安装sqlite3模块吗?我正在使用Macbook,并在命令行上尝试了: 但是会弹出一个错误。 问题答案: 您不需要安装模块。它包含在标准库中(自Python 2.5起)。

  • 这就是我在做“python-V”时得到的结果 Python 2.7.11::Anaconda 2.4.0(64位)我通常使用我的终端来玩IDLE。但现在我也安装了空闲shell。 我尝试导入sys;sys.path两者。它们抛出不同的路径。我的终端返回了包含蟒蛇的路径。 我试着按照这些步骤安装一个模块。 > python设置。py sdist sudo python安装程序。py安装 然后我打开闲

  • 关于amh如何添加ngx_pagespeed模块呢? 网站用wp的话,还是有必要在nginx下搞一下加速优化的, 谁知道那个amh面板是否可以添加或者带不带该模块,用来加速wp网站的

  • 我正在尝试创建一个新的JavaFX项目。我已经安装了1.8,我相信其中包括javafx包。在终端中运行将显示。我从这里安装的 当我转到时,选择的版本是。列表中没有版本。如果选择add new,并导航到,我会看到: 没有版本。 如何将IntelliJ更新到用户版本?