“Usage of API documented as @since 1.6+……”的解决办法

《交个朋友,绝非潘嘎之交》


在使用Java脚本语言javax.script包时,项目报错,报错内容如下:

Usage of API documented as @since 1.6+ This inspection finds all usages of methods that have @since tag in their documentation. This may be useful when development is performed under newer SDK version as the target platform for production

这里写图片描述

**问题解决方法:**打开工程配置,修改language level为6以上的版本即可
File ->Project Structure->Project Settings -> Modules -> (需要修改的工程名称) -> Sources -> Language Level->选6以上的版本。

到这里问题已经解决了,想继续了解问题根源的同学请继续:

首先分析报错信息,这是由于使用了当前开发环境无法解析的jdk特性,javax.script是Java6中加入的新特性,可能当前开发环境版本较低。
打开工程的属性设置窗口(Ctrl+Alt+shift+S):
这里写图片描述

目前的JDK版本是1.7,这没毛病,下面的language level也是选择了和JDK版本一致的,但是为什么还会报错?接下来看下工程配置信息:
这里写图片描述

从这里可以看出工程的language level还是5.0,这也就解释了为什么使用javax.script会报错了,把这里的language level改成6以上的版本,确认后就OK了。

那么还有一个疑问,那就是我明明在项目配置中设置了language level为7,为什么到了module中就变成5了呢?

这里面就是项目和工程的区别了,在maven中每个工程有各自的pom.xml配置,如果不在pom.xml中进行配置的话,工程的language level默认为5,可以在pom中进行该项设置

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.1</version>
    <configuration>
        <source>1.7</source>
        <target>1.7</target>
        <encoding>utf-8</encoding>
    </configuration>
</plugin>
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值