[ 
https://issues.apache.org/jira/browse/GEODE-10129?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17510117#comment-17510117
 ] 

ASF subversion and git services commented on GEODE-10129:
---------------------------------------------------------

Commit 8bf5a814ed03d347301e9e3c5cebbcdddbc6a068 in geode's branch 
refs/heads/develop from Dale Emery
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=8bf5a81 ]

GEODE-10129: Forward opens/exports to child JVMs (#7457)

* GEODE-10129: Forward opens/exports to child JVMs

Several tests and test framework classes launch child JVMs to run Geode
product and test code. Those tests and classes now forward the test
JVM's `--add-opens` and `--add-exports` options to the child JVMs.

* export sun.reflect.generics.repository

* Restore inadvertently removed ProcessManager args

> Forward module-related options when launching test subprocesses
> ---------------------------------------------------------------
>
>                 Key: GEODE-10129
>                 URL: https://issues.apache.org/jira/browse/GEODE-10129
>             Project: Geode
>          Issue Type: Improvement
>          Components: tests
>    Affects Versions: 1.15.0
>            Reporter: Dale Emery
>            Assignee: Dale Emery
>            Priority: Major
>              Labels: Java17, pull-request-available
>
> Several tests and test helpers launch JVMs to run Geode code. For tests to 
> run properly on JDK 17, that code must open or export the packages needed by 
> the code that will run in the JVMs.
> Such helpers include:
>  - {{GfshCommandRule}}
>  - {{ProcessManager}} for DUnit tests.
>  - {{ServerContainer}} for Jetty/Tomcat session tests.
> Also, {{ServerLauncherDUnitTest}} launches JVMs via a {{{}ProcessBuilder{}}}.
> A simple way to support opening and exporting the required packages is:
>  # Assume that the current JVM opened and exported all required packages. 
> (See https://issues.apache.org/jira/browse/GEODE-10128)
>  # Query the {{--add-opens}} and {{--add-exports}} that were used to launch 
> the current JVM. This can be done by calling 
> {{{}ManagementFactory.getRuntimeMXBean().getInputArguments(){}}}, then 
> filtering the list to retain only the {{--add-opens}} and {{--add-exports}} 
> options.
>  # Add those options when launching a subprocess.
> It would be useful to query and perform the current JVM a single place. I 
> propose a static method: {{{}JavaModuleHelper.getJvmModuleOptions(){}}}.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to