[jsr294-modularity-eg] Exported packages and wildcard expansion
Glyn Normington
glyn_normington at uk.ibm.com
Mon Apr 23 09:59:04 EDT 2007
The current strawman allows a package to be exported by specifying a *
wildcard such as example.foo.myapp.*. The wildcard is expanded by javac.
This places some constraints on separate compilation. The superpackage
must be compiled at a point in time when all the classes belonging to the
package are (a) known and (b) available to javac.
So some scenarios must be handled carefully. Suppose two developers are
collaborating to produce a superpackage and both are contributing classes
to an exported package. It is not sufficient for them to share the
superpackage source file and any shared code. They must also share the
full set of contributed classes so that javac can perform the correct
expansion.
Clearly runtime errors will be necessary if the list of members of the
exported package does not match the wildcard expansion.
So I'd like to check that wildcard expansion is strictly necessary since
class files of classes belonging to a superpackage contain the name of the
superpackage.
Glyn
-------------- next part --------------
An HTML attachment was scrubbed...
URL: /pipermail/attachments/20070423/6b7ed6fa/attachment.html
More information about the jsr294-modularity-eg
mailing list