suggested document enhancement
Alan Bateman
Alan.Bateman at oracle.com
Fri Mar 2 10:59:14 UTC 2018
On 02/03/2018 09:22, Bernard Amade wrote:
> Hello all
> since my job is to write java tutorials I have to confess I am lost on some topics about the module system.
> Here is a first concern:
> - I used to teach to deploy resources in an additional jar at deploy time
> - so if a code requesting a resource was in package/directory com.mycomp.biz then the resource was in a com.mycomp.biz.config directory ... in a different jar which could be written by the "deployment programmer".
>
> with the module system I do not know how to have something similar.
> Well may be the resource could be in a non-modular jar in the class-path (or added by patch-module)
> but realy I don't know what could be the best option (put it in a modular jar? but then how to write the module-info, how to update the module-info of other modules - something done by the deployment programmer- ? how to start the jar: from the command line? but then can we still have a "clickable" jar?
>
Resources aren't a first class concept in the module system so we of
course recommend using services itself.
If you are migrating existing code without doing any significant
rearchitecture then modules can open packages to allow resources be
located by code in other modules with the legacy
ClassLoader.getResourceXXX APIs. There is also support in the
ResourceBundle API to use resource bundles in other modules.
The Quick Start Guide is indeed a bit minimal. To learn more then the
presentations and recording from several conferences are linked from the
Project Jigsaw page and may be useful to you. In addition, there are a
number of books on the topic. In particular, "Java 9 Modularity", by
Sander Mak and Paul Bakker, is an excellent resource that will stand the
test of time. That book has a section entitled "Resource Encapsulation"
that should help you get going.
I assume by "clickable jar" you mean executable JARs, as in `java -jar
app.jar`. There is no support at this time for starting modular
applications with the `java -jar`.
-Alan
More information about the jigsaw-dev
mailing list