Combining Java with the latest version of the toolkit avoids failures in applications due to multiple GTK version conflicts.
Oracle is currently planning to incorporate the GTK 3 GUI toolkit into Java 9 based on the Linux system. This will ensure that the current Java is combined with the latest version of the toolkit to prevent the application from encountering failures due to multiple GTK version conflicts.
According to a Java enhancement proposal published on the Openjdk.net website, the goal of this initiative is to support the GTK (i.e. GIMP toolkit) 2 by default and to use GTK 3 in the case where the system attribute is specified. Various Java graphics applications based on JavaFX, swing, or AWT (the Advanced Container Toolkit) will be included in the plan, and existing applications can run on Linux without the need to modify for GTK 2 or 3.
The proposal has been sent to members of the Openjfx-dev mailing list by Mark Reinhold, chief architect of Oracle's Java Platform Division. Java 9 is expected to be officially released in March 2017.
"There are a number of Java packages currently using GTK, including awt/swing, JavaFX, and SWT. SWT has migrated to GTK 3, but it still contains a system attribute that can be used to force it to use an earlier version, "the proposal says. This practice of mixing different GTK versions within a package can lead to an application failure. ”
This issue also affects, in particular, the various applications that use the Eclipse development platform. The proposal also says that while GTK 2 and 3 are currently available in the default way for most Linux distributions, there are still a subset of the release plans that have not yet been incorporated.
Also affected by GTK +, this cross-platform toolkit exists as a feature and API, and is released with free software through the GNU Project. It is included in a variety of common projects, from the Apache OpenOffice Office software suite to the Inkscape Vector graphics editor to the Pyshare image upload tool.
According to the Java proposal, the alternative to GTK 2 and 3 is to tweak Java graphics to ensure that they support only GTK 3, which greatly reduces the need for porting and testing. However, this package can lead to a number of bugs that cannot be detected by testing, meaning we need to devote extra effort to checking the appearance and usage of AWT, and require porting accesses than either or both in javafx/swing. This type of migration often requires a lot of coordination between AWT and swing in the implementation process.
But a former Java executive who worked for Sun Microssytems raised questions about the improvements it has brought to Java. "Java-based desktop applications on the Linux platform are not so much to see, so I'm not sure how large the market is for them," Arun Gupta, a former Sun company Java EE team member and the current vice president of Couchbase's developer evangelism, stressed.
The above describes a Java enhancement proposal published by the Openjdknet website, including the content, and I hope that the PHP tutorial interested in a friend helpful.