Java 新的是内部专有API

Java 新的是内部专有API,java,compiler-warnings,Java,Compiler Warnings,在我们的项目构建过程中,我们收到了一个无法解释的警告: [javac] (...)\SessionKeeper.java:39: warning: NEW is internal proprietary API and may be removed in a future release [javac] private static final int timeOfInactivity = 1000 * 60 * 9; // allowed time of inactivity

在我们的项目构建过程中,我们收到了一个无法解释的警告:

[javac] (...)\SessionKeeper.java:39: warning: NEW is internal proprietary API and may be removed in a future release [javac] private static final int timeOfInactivity = 1000 * 60 * 9; // allowed time of inactivity [javac] ^ [javac](…)\SessionKeeper.java:39:警告:新API是内部专有API,可能会在将来的版本中删除 [javac]私有静态final int timeofActivity=1000*60*9;//允许的不活动时间 [javac]^ 其他信息:

  • ApacheAnt(TM)版本1.8.4于2012年5月22日编译
  • Java(TM)SE运行时环境(build 1.7.0_25-b16)
谁能解释一下编译器为什么会发出这个警告,以及我应该做些什么来避免它

[编辑]添加了附近的代码

private static final String CLASS_NAME = SessionKeeper.class.getName(); private static final int logoutDelaySeconds = 1000 * 60; // logout after 1 min. from the point when dialog was shown to the user private static final int timeOfInactivity = 1000 * 60 * 9; // allowed time of inactivity private boolean isSchedulerStarted = false; // indicates if SessionKeeper was started or not private static SessionKeeper instance; 私有静态最终字符串CLASS_NAME=SessionKeeper.CLASS.getName(); 私有静态最终int logoutDelaySeconds=1000*60;//从向用户显示对话框时起1分钟后注销 私有静态最终整数时间活动=1000*60*9;//允许的不活动时间 私有布尔值isSchedulerStarted=false;//指示SessionKeeper是否已启动 私有静态SessionKeeper实例; [编辑]由于有不少人要求提供源代码,我将其附在此处(24小时后过期):

[编辑]到目前为止已尝试的内容:

  • 内联常量->错误转到上面的行
  • 反应SessionKeeper不扩展任何类->相同错误
  • 删除类名和日志记录语句

    • 解决方案发现我删除了文件中的所有导入,并用存根替换了所有内容

      这使得java在另一个文件中报告错误

      另一个文件的导入错误且未使用(import com.sun.org.apache.bcel.internal.generic.NEW)


      因此,我建议任何出现此错误的人在整个工作区中搜索新的

      请向我们展示SessionKeeper.java中的相关代码您是否错误地将新运算符写成大写,它以某种方式自动导入了一个类,如com.sun.org.apache.bcel.internal.generic.NEW?@supersam654我可以在问题前后附加几行。@Albatros SessionKeeper.java的第39行是什么?请发布更多代码……建议在每次更改源代码后检查未使用的导入。这些新功能可能是IDE快速修复程序被误用的结果。是的,就我个人而言,我使用eclipse保存操作来清理未使用的导入并重新格式化编辑过的行,但不是团队中的每个人都这样做;)更一般地说,“内部专有API”的错误是指在
      com.sun.*
      包中使用类。您不应该在程序中使用任何
      com.sun.*
      类。