[
https://issues.apache.org/jira/browse/LUCENE-10192?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17433423#comment-17433423
]
Dawid Weiss commented on LUCENE-10192:
--------------------------------------
I've pushed a commit that makes Luke a part of the binary distribution. This
kind of makes sense to me now - we don't need all of the third-party jars but
we can make the demos and examples (and Luke) functional as a demonstration and
validation of the reason why the binary release exists. The folder structure
looks like this:
{code}
bin
CHANGES.txt
docs
JRE_VERSION_MIGRATION.md
LICENSE.txt
licenses
MIGRATE.md
modules
modules-test-framework
modules-thirdparty
NOTICE.txt
README.md
SYSTEM_REQUIREMENTS.md
{code}
Where {{modules}} contains Lucene JARs (the test framework is separate because
it validates the module system constraints) and {{modules-thirdparty}} contains
all modules required to run Luke (at the moment). This layout simplifies Luke
utility launch scripts greatly, basically to this:
{code}
java --module-path modules;modules-thirdparty -cp
modules-thirdparty/log4j-api-2.13.2.jar --module lucene.luke
{code}
The classpath element is needed because all the modules currently live in the
automatic-name space while log4j-api is a proper module. This can be cleaned up
as a follow-up by making luke a true module (declare its dependencies).
The side-effect of this layout is also that, in the future, you could inspect
Lucene JARs using the module system's --describe-module option. And like I
mentioned, you can run the demo tools in a much more convenient way:
{code}
java --module-path jars --module lucene.demo/org.apache.lucene.demo.IndexFiles
{code}
I think those "demos" could also benefit from a rewrite (use multiple cores to
index)... but it's an unrelated issue. If we decide it's the direction to
follow then it'd also make LUCENE-9978 invalid (since the binary distribution
would contain a fully-functional Luke as a first-class citizen and user of the
binary modules).
> Drop third-party JARs from the binary distribution
> --------------------------------------------------
>
> Key: LUCENE-10192
> URL: https://issues.apache.org/jira/browse/LUCENE-10192
> Project: Lucene - Core
> Issue Type: Task
> Reporter: Dawid Weiss
> Assignee: Dawid Weiss
> Priority: Trivial
> Time Spent: 10m
> Remaining Estimate: 0h
>
> [~janhoy] Are we ready (with respect to scripts) for this change? I'd like to
> do it but I'm not sure whether the release wizard doesn't depend on it
> somehow (I will handle buildAndPushRelease.py and smokeTestRelease.py if they
> need fixes but I'm not sure about the releaseWizard.*).
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]