------ | |
jpms.args | |
------ | |
Robert Scholte | |
------ | |
2017-08-22 | |
------ | |
~~ Licensed to the Apache Software Foundation (ASF) under one | |
~~ or more contributor license agreements. See the NOTICE file | |
~~ distributed with this work for additional information | |
~~ regarding copyright ownership. The ASF licenses this file | |
~~ to you under the Apache License, Version 2.0 (the | |
~~ "License"); you may not use this file except in compliance | |
~~ with the License. You may obtain a copy of the License at | |
~~ | |
~~ http://www.apache.org/licenses/LICENSE-2.0 | |
~~ | |
~~ Unless required by applicable law or agreed to in writing, | |
~~ software distributed under the License is distributed on an | |
~~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | |
~~ KIND, either express or implied. See the License for the | |
~~ specific language governing permissions and limitations | |
~~ under the License. | |
~~ NOTE: For help with the syntax of this file, see: | |
~~ http://maven.apache.org/doxia/references/apt-format.html | |
JPMS.ARGS | |
Java 9 comes with a new set of arguments related to the Java Platform Modular System. Besides the module path are | |
other new arguments which can change the behavior of the application. These can be used during both compile time | |
and runtime. This information is not stored in any class, but it can be interesting to know at runtime which extra | |
arguments were used at compile time. | |
If any of these arguments is used, the <<<META-INF/jpms.args>>> is created. | |
Every argument gets its own line. | |
The following arguments will end up in this file: | |
* <<<--upgrade-module-path>>> | |
* <<<--add-exports>>> | |
* <<<--add-reads>>> | |
* <<<--add-modules>>> | |
* <<<--limit-modules>>> | |
* <<<--patch-module>>> | |
[] | |
The <<<--patch-module>>> values are different compared to the original values passed to the compiler. According to | |
the specification it looks like <<<--patch-module \<module\>=\<file\>(\<pathsep\>\<file\>)\*>>> | |
However, files are system specific. For that reason the module names are used. If the jar itself contains the | |
patchcode, then an <<<_>>> (underscore) is used. As separators a <<<, >>> (comma + space) is used. | |
+--- | |
--patch-module | |
<module>=<module>(, <module>)* | |
+--- |