JDK-8215322 : add @file support to jaotc
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 11,12
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2018-12-12
  • Updated: 2022-02-06
  • Resolved: 2018-12-19
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 11 JDK 12 JDK 13
11.0.7-oracleFixed 12 b26Fixed 13Fixed
Description
currently, the number of jaotc argument is limited by max command line length, in some cases, it isn't enough, for example compiling a number of selected classes. many java tools have support for '@file' so adding the same support to jaotc is natural and will solve the problem w/ limitation.
Comments
Fix request (11u) I would like to downport this for parity with 11.0.7-oracle. Applies clean.
24-12-2019

URL: http://hg.openjdk.java.net/jdk/jdk12/rev/281c85f43f79 User: iignatyev Date: 2018-12-19 06:09:00 +0000
19-12-2018

I support this Late-Enhancement Request. According JDK Project Lead will review it: http://openjdk.java.net/jeps/3#Late-Enhancement-Request-Process
18-12-2018

Late Enhancement Request: Justification: the RFE is required for automatization of testing w/ AOT'ed test classes, which will improve overall coverage of AOT feature, and hence its quality. Estimated integration date: 2018-12-20 RIsk: very low, the patch just adds support of @file and doesn't change any existing functionality. the fix got reviewed and approved in https://github.com/oracle/graal/pull/859 RFR: http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/2018-December/031850.html
17-12-2018

[~iignatyev] ok, got it, thanks.
12-12-2018

> Looks like src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/Options.java needs to be updated as well. no, it does not b/c j.t.jaotc.Main::parse will "expand" all `@file` into their content in j.t.j.Main::main and pass already expanded args into j.t.j.Main::run, so j.t.jaotc.Options doesn't need to know about `@file`.
12-12-2018

Looks like src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/Options.java needs to be updated as well.
12-12-2018

graal PR -- https://github.com/oracle/graal/pull/859
12-12-2018

http://cr.openjdk.java.net/~iignatyev//8215322/webrev.00/index.html
12-12-2018