News

JetBrains Adds Jigsaw Support

Software development toolmaker JetBrains has added support for Jigsaw in the latest release of its popular IntelliJ IDEA IDE, the company announced this week.

Among other things, the new version, IntelliJ IDEA 2017.1, supports code completion in the module-info.java file, quick fixes for adding modules to a project, and overall help with the new module system.

The long awaited, much delayed modularization of the Java SE Platform and JDK is one of the biggest changes in the history of Java. JSR 376, the Java Specification Request that aims to define "an approachable yet scalable module system for the Java Platform" will bring a fundamentally new kind of programming component to Java. And Java toolmakers like JetBrains are making fundamental changes of their own to support a modularized Java 9.

JetBrains Developer Advocate Trisha Gee announced the new support on the company blog. In that post, Gee provides several examples to demonstrate the impact of modularity in Java, and how to work with it within the IntelliJ IDEA IDE.

"It's important to note that there are two systems of modularly here," Gee wrote. "Firstly, the IntelliJ IDEA modules that you're probably already familiar with; and secondly, the new Java 9 (Jigsaw) modules that are configured using module-info.java. To use Java 9 modularity, each Java 9 module needs to correspond to an IntelliJ IDEA module."

IntelliJ IDEA already employs the modules concept in the IDE; each IntelliJ IDEA module builds its own classpath. "With the introduction of the new Java platform module system, IntelliJ IDEA modules had to extend their capability by supporting the Java platform's module-path if it is used instead of [our] classpath," the company explained on its new tutorial. "IntelliJ IDEA assists in creating and using Java Platform modules and how these modules work with IntelliJ IDEA modules."

It's a testament to the complexity of the Jigsaw Project that Chief Architect of Oracle's Java Platform Group, Mark Reinhold, asked for so many extensions of the Java 9 release schedule because of it. And he appears to have had companies like JetBrains in mind when he asked for more time.

"[We] want to ensure that the maintainers of the essential build tools and IDEs have adequate time to design and implement good support for modular development," he wrote in a December 2015 post on the OpenJDK mailing list.

JetBrains announced the Early Access Release of IntelliJ IDEA 2017.1 in January. Developers who want to start working with Jigsaw now can get support on the OpenJDK website, which provides a Project Jigsaw Quick-Start Guide. JetBrains offers its own Getting Started with Java 9 tutorial on its developer support pages.

About the Author

John K. Waters is the editor in chief of a number of Converge360.com sites, with a focus on high-end development, AI and future tech. He's been writing about cutting-edge technologies and culture of Silicon Valley for more than two decades, and he's written more than a dozen books. He also co-scripted the documentary film Silicon Valley: A 100 Year Renaissance, which aired on PBS.  He can be reached at [email protected].