Profile Image

What is Java Stricter Class File Checks (Deprecated): -Xfuture?

What is Java Stricter Class File Checks (Deprecated): -Xfuture? Have you used this JVM argument before? What are the pros & cons of using this Java argument? Can you share your perspective/experience in using this JVM argument?

  • jvm-argument

  • xfuture

  • future

Please Sign In or to post your comment or answer

Profile Image

Pavel Khodakovsky


• -Xfuture


The -Xfuture option was added in Java 1.3 to enable stricter checks on class file
formats, in anticipation of these checks becoming the default in a future version
of Java. Without -Xfuture, the checking of the class file is no stricter than the
checks present in Java 1.1. Sun Microsystems, and later Oracle, recommended
that -Xfuture be used with all new code to ensure it passes the stricter checks
that would become the default in the future.

However in practice these checks were not implemented, and the -Xfuture
argument has only the effect of passing -Xverify:all to the JVM.

As of Java 17 the -Xfuture option is deprecated. It may be removed in a future

Default Value:

-Xfuture is off by default.


When -Xfuture is used with Java 17 or above, the following warning message is
Warning: -Xfuture option is deprecated and may be removed in a future release.

Arguments Related to -Xfuture:

TODO: link to -Xverify

Related Posts:

• Deprecation of the -Xfuture option

If you have additional comments, interesting experiences or even point of disagreement with this JVM argument description, please leave a comment. Your
insights will help the entire 10+ million java developer community to develop
one standard source of documentation for all the JVM arguments.

Got something else on mind? Post Your Question

Not the answer you're looking for? Browse other questions tagged
  • jvm-argument

  • xfuture

  • future