Manifold fully supports all LTS versions since JDK 8, which includes 8, 11, and 17. Additionally, manifold works with the latest non-LTS version, at the moment 19. Manifold also fully supports the Java Platform Module System (JPMS).
Unlikely. Java internal APIs can and do change from version to version, sometimes dramatically, however Manifold always adjusts to changes ahead of Java releases. To date, Manifold has adapted to eight major Java versions since its debut, always well in advance of Oracle’s official release schedule.
Yes, the Manifold project is open source and publicly available on github, free for use via Apache License 2.0.
Yes. Please refer to the Setup instructions.
Yes. The Manifold plugin provides comprehensive support for IntelliJ IDEA and Android Studio.
Download / Update the plugin directly from within the IDE:
Settings ➜ Plugins ➜ Marketplace ➜ search:
Note: The IDE notifies you within 24 hours when an update is available and gives you the opportunity to sync.
No. The plugin is no longer commercial and is available for free from JetBrains Marketplace.
Add the manifold-fill-in-blank dependency[s] to your project along with the
-Xplugin:Manifold javac argument, the
setup is sensitive to the version of Java you are using, generally whether you are using Java 8 or 9+. See the
Setup docs for complete instructions.
Discussions Join our Slack Group to start a discussion, ask questions, provide feedback, etc.
Report A Bug The Manifold project uses github issues to track bugs, features, and other requests. If you discover a bug, have a feature request, or an idea go here and let it be known. Expect a response within 24 hours.
Private E-mail If your question or issue is more pressing or confidential, don’t hesitate to send an email to email@example.com.
Links to recently published Manifold articles are available on the Articles page. There is always another article on the way, check back for more.
You probably need to update your project dependencies to use the latest manifold release. If your project’s dependencies are out of sync, the plugin tells you which version of manifold you need with in a warning message when you load your project. You can find the latest releases here.
Important: If you are using Maven or Gradle, you must update your build files – do not change the Module dependencies from IntelliJ’s UI. Please refer to the Maven and Gradle sections of the Manifold Setup instructions.
Please make some noise if you can’t get it working, chances are you’re not alone and help will arrive soon.
The module with your extension methods must declare that it should be processed for extension methods. Do that with the
Contains-Sources JAR manifest entry. For instance, from Maven:
<manifestEntries> <!--class files as source must be available for extension method classes--> <Contains-Sources>java,class</Contains-Sources> </manifestEntries>
Please see the documentation for making extension libraries.
Sometimes IntelliJ’s cache is out of sync with extensions. The simplest remedy is to refresh the project from source control using the Refresh (🗘) tool command: