刚刚偶然发现了 java.util.Tripwire。从 1.8 开始它就出现在 Java 中。Github 上的零使用。这能用来做什么?

mju*_*rez 5 java autoboxing

正如标题所说,只是java.util.Tripwire一个尚未清理的旧 JVM 实用程序吗?有趣的是,由于某种原因,Javadoc 甚至没有公开。源代码中的简短 Javadoc 是这样说的:

  • 用于检测 {@code java.util} 类中无意使用装箱的实用程序类。根据 {@link Boolean#getBoolean(String)} 是否将系统属性 {@code org.openjdk.java.util.stream.tripwire} 视为 {@code true},来打开或关闭检测。

通常应在生产使用时关闭此功能。

@apiNote 典型用法是装箱代码执行以下操作:

{
      if (Tripwire.ENABLED)
          Tripwire.trip(getClass(), "{0} 调用 PrimitiveIterator.OfInt.nextInt()");
 }

感觉像是不应该使用的东西。它使用sun.util.logging,我什至不知道它仍然存在。而且,如果我想使用它,我是否必须在应用程序可能进行自动装箱的任何地方添加该代码片段?

有人用这个来做有用的事情吗?

小智 -2

我能想到它的一些用途,但没有一个是非常令人满意的。其中最重要的是一种将代码片段传递到系统的方法,该系统在检测到某些字符串(网站访问、某个电话号码......)时激活,然后组装以执行用户不知道的代码环境大约同时将活动记录到未知的目的地,同时完全避开反病毒软件。