Hi Alan, Dmitry, thanks a lot for your help. Alan's suggestion to move the dependency from src/jdk.jcmd/share/classes/module-info.java to src/jdk.jcmd/$OS/classes/module-info.java.extra works fine. After doing that change I could successfully build on AIX. I'll open a bug for this and post a webrev later today. As I'm not a jigsaw committer I'll probably need a sponsor though :)
Regards, Volker On Mon, Mar 7, 2016 at 12:17 PM, Alan Bateman <[email protected]> wrote: > On 07/03/2016 09:38, Dmitry Samersoff wrote: >> >> Volker, >> >> Currently tmtools (jstack, jmap, jinfo, ... ) has two modes of >> operations - one is cooperative (attach API based) other one is >> non-cooperative (SA based). >> >> Long term plan is completely separate these two modes, with jhsdb as the >> only entry point to SA. >> >> This work is partially done - SA based mode is accessible via jhsdb. >> >> But removal of SA based functions from existing tools has huge >> compatibility impact (e.g. no more mixed stacktrace from jstack etc) and >> can't be done at one shot. >> >> Nothing besides tmtools depends to SA i.e. jcmd it self doesn't depend >> to SA. >> > We can address the AIX build issue by moving the `requires` to a > module-info.java.extra file so that the module declaration is augmented in > the build on platforms that have SA. This build tool is mostly for adding > qualified exports and providers so we'll need to double check that it works > with `requires`. If there is an issue then a workaround is to remove the > requires and change the launcher builds to generate the launchers with > -addmods ALL-SYSTEM. > > That said, I think we need to push ahead on the separation. The legacy tools > have always been documented as experimental and unsupported and it shouldn't > be a huge transition for someone using `jstack -m <vmid>` to use the jhsdb > equivalent. I don't know what tmtools is, where is the code for this? > > -Alan.
