1. 程式人生 > >“Usage of API documented as @since 1.6+……”的解決辦法

“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
  • 1

這裡寫圖片描述

問題解決方法:開啟工程配置,修改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>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10