-
Enhancement
-
Resolution: Fixed
-
P3
-
9
Background
Java Packager's -makeall is one stop shopping: It accepts one java file, a few arguments (-makeall -appclass -preloader -classpath -name -width -height -v), performs compilation by invoking javac, creates a jar, and a JNLP file is generated all in one step. It is designed to be an extremely simple build tool.
Justification
-makeall defines almost all options allowing for very little control by the developer. Java Packager was enhanced to add support for native bundles but no -makeall arguments were added for native bundles and no Ant tasks exist for -makeall. It is only a CLI argument. -makeall has been buggy since 7u and is only useful for Web Start Applications. -makeall is unlikely to have modular support (which was not added since this is primarily a JNLP only feature). Keeping -makeall adds development time to fix or enhance the feature, and at least a week of SQE time. By deprecating we save SQE time testing an entire option and sub options -makeall -appclass -preloader -classpath -name -width -height -v for Windows, Linux and Mac, with and without modules.
Deprecation would take one new line of code:
460: System.err.println("-makeall is deprecated");
As you can see from the review, the diff provided below all existing deprecations use stdout, so those will be fixed as well.
Risk is extremely low.
Java Packager's -makeall is one stop shopping: It accepts one java file, a few arguments (-makeall -appclass -preloader -classpath -name -width -height -v), performs compilation by invoking javac, creates a jar, and a JNLP file is generated all in one step. It is designed to be an extremely simple build tool.
Justification
-makeall defines almost all options allowing for very little control by the developer. Java Packager was enhanced to add support for native bundles but no -makeall arguments were added for native bundles and no Ant tasks exist for -makeall. It is only a CLI argument. -makeall has been buggy since 7u and is only useful for Web Start Applications. -makeall is unlikely to have modular support (which was not added since this is primarily a JNLP only feature). Keeping -makeall adds development time to fix or enhance the feature, and at least a week of SQE time. By deprecating we save SQE time testing an entire option and sub options -makeall -appclass -preloader -classpath -name -width -height -v for Windows, Linux and Mac, with and without modules.
Deprecation would take one new line of code:
460: System.err.println("-makeall is deprecated");
As you can see from the review, the diff provided below all existing deprecations use stdout, so those will be fixed as well.
Risk is extremely low.
- relates to
-
JDK-8165977 Document -makeall deprecation
- Resolved