opensearch-3.6.0-alt4.x86_64 Шаги воспроизведения: # apt-get install opensearch # /usr/share/opensearch/bin/opensearch-plugin install analysis-phonetic Получаемый результат: -> Installing analysis-phonetic -> Downloading analysis-phonetic from opensearch [=================================================] 100% -> Failed installing analysis-phonetic -> Rolling back analysis-phonetic -> Rolled back analysis-phonetic Exception in thread "main" java.lang.IllegalStateException: jar hell! duplicate jar [/usr/share/opensearch/lib/tools/plugin-cli/bc-fips-2.1.2.jar] on classpath: /usr/share/opensearch/lib/zstd-jni-1.5.6-1.jar:/usr/share/opensearch/lib/tools/plugin-cli/opensearch-plugin-cli-3.6.0.jar:/usr/share/opensearch/lib/tools/plugin-cli/commons-lang3-3.18.0.jar:/usr/share/opensearch/lib/tools/plugin-cli/commons-io-2.16.0.jar:/usr/share/opensearch/lib/tools/plugin-cli/commons-compress-1.28.0.jar:/usr/share/opensearch/lib/tools/plugin-cli/bcpg-fips-2.1.11.jar:/usr/share/opensearch/lib/tools/plugin-cli/bc-fips-2.1.2.jar:/usr/share/opensearch/lib/tools/keystore-cli/keystore-cli-3.6.0.jar:/usr/share/opensearch/lib/t-digest-3.3.jar:/usr/share/opensearch/lib/spatial4j-0.7.jar:/usr/share/opensearch/lib/snakeyaml-2.1.jar:/usr/share/opensearch/lib/reactor-core-3.8.4.jar:/usr/share/opensearch/lib/reactive-streams-1.0.4.jar:/usr/share/opensearch/lib/protobuf-java-3.25.8.jar:/usr/share/opensearch/lib/opensearch-x-content-3.6.0.jar:/usr/share/opensearch/lib/opensearch-telemetry-3.6.0.jar:/usr/share/opensearch/lib/opensearch-task-commons-3.6.0.jar:/usr/share/opensearch/lib/opensearch-secure-sm-3.6.0.jar:/usr/share/opensearch/lib/opensearch-plugin-classloader-3.6.0.jar:/usr/share/opensearch/lib/opensearch-launchers-3.6.0.jar:/usr/share/opensearch/lib/opensearch-geo-3.6.0.jar:/usr/share/opensearch/lib/opensearch-core-3.6.0.jar:/usr/share/opensearch/lib/opensearch-compress-3.6.0.jar:/usr/share/opensearch/lib/opensearch-common-3.6.0.jar:/usr/share/opensearch/lib/opensearch-cli-3.6.0.jar:/usr/share/opensearch/lib/opensearch-agent-policy-3.6.0.jar:/usr/share/opensearch/lib/opensearch-3.6.0.jar:/usr/share/opensearch/lib/lucene-suggest-10.4.0.jar:/usr/share/opensearch/lib/lucene-spatial3d-10.4.0.jar:/usr/share/opensearch/lib/lucene-spatial-extras-10.4.0.jar:/usr/share/opensearch/lib/lucene-sandbox-10.4.0.jar:/usr/share/opensearch/lib/lucene-queryparser-10.4.0.jar:/usr/share/opensearch/lib/lucene-queries-10.4.0.jar:/usr/share/opensearch/lib/lucene-misc-10.4.0.jar:/usr/share/opensearch/lib/lucene-memory-10.4.0.jar:/usr/share/opensearch/lib/lucene-join-10.4.0.jar:/usr/share/opensearch/lib/lucene-highlighter-10.4.0.jar:/usr/share/opensearch/lib/lucene-grouping-10.4.0.jar:/usr/share/opensearch/lib/lucene-core-10.4.0.jar:/usr/share/opensearch/lib/lucene-backward-codecs-10.4.0.jar:/usr/share/opensearch/lib/lucene-analysis-common-10.4.0.jar:/usr/share/opensearch/lib/log4j-jul-2.25.3.jar:/usr/share/opensearch/lib/log4j-core-2.25.3.jar:/usr/share/opensearch/lib/log4j-api-2.25.3.jar:/usr/share/opensearch/lib/jzlib-1.1.3.jar:/usr/share/opensearch/lib/jts-core-1.15.0.jar:/usr/share/opensearch/lib/jopt-simple-5.0.4.jar:/usr/share/opensearch/lib/joda-time-2.12.7.jar:/usr/share/opensearch/lib/jna-5.16.0.jar:/usr/share/opensearch/lib/java-version-checker-3.6.0.jar:/usr/share/opensearch/lib/jakarta.annotation-api-1.3.5.jar:/usr/share/opensearch/lib/jackson-dataformat-yaml-2.21.2.jar:/usr/share/opensearch/lib/jackson-dataformat-smile-2.21.2.jar:/usr/share/opensearch/lib/jackson-dataformat-cbor-2.21.2.jar:/usr/share/opensearch/lib/jackson-core-2.21.2.jar:/usr/share/opensearch/lib/RoaringBitmap-1.3.0.jar:/usr/share/opensearch/lib/HdrHistogram-2.2.2.jar:/usr/share/opensearch/agent/opensearch-agent.jar:/usr/share/opensearch/agent/opensearch-agent-bootstrap-3.6.0.jar:/usr/share/opensearch/agent/byte-buddy-1.17.7.jar:/usr/share/opensearch/lib/tools/plugin-cli/bc-fips-2.1.2.jar:/usr/share/opensearch/lib/tools/plugin-cli/commons-io-2.16.0.jar:/usr/share/opensearch/lib/tools/plugin-cli/commons-codec-1.18.0.jar:/usr/share/opensearch/lib/tools/plugin-cli/commons-lang3-3.18.0.jar:/usr/share/opensearch/lib/tools/plugin-cli/opensearch-plugin-cli-3.6.0.jar:/usr/share/opensearch/lib/tools/plugin-cli/opensearch-agent-policy-3.6.0.jar:/usr/share/opensearch/lib/tools/plugin-cli/commons-compress-1.28.0.jar:/usr/share/opensearch/lib/tools/plugin-cli/bcpg-fips-2.1.11.jar at org.opensearch.common.bootstrap.JarHell.parseClassPath(JarHell.java:165) at org.opensearch.common.bootstrap.JarHell.parseClassPath(JarHell.java:111) at org.opensearch.tools.cli.plugin.InstallPluginCommand.jarHellCheck(InstallPluginCommand.java:825) at org.opensearch.tools.cli.plugin.InstallPluginCommand.loadPluginInfo(InstallPluginCommand.java:811) at org.opensearch.tools.cli.plugin.InstallPluginCommand.installPlugin(InstallPluginCommand.java:846) at org.opensearch.tools.cli.plugin.InstallPluginCommand.execute(InstallPluginCommand.java:277) at org.opensearch.tools.cli.plugin.InstallPluginCommand.execute(InstallPluginCommand.java:251) at org.opensearch.common.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:110) at org.opensearch.cli.Command.mainWithoutErrorHandling(Command.java:138) at org.opensearch.cli.MultiCommand.execute(MultiCommand.java:104) at org.opensearch.cli.Command.mainWithoutErrorHandling(Command.java:138) at org.opensearch.cli.Command.main(Command.java:101) at org.opensearch.tools.cli.plugin.PluginCli.main(PluginCli.java:66)
> duplicate jar [/usr/share/opensearch/lib/tools/plugin-cli/bc-fips-2.1.2.jar] > on classpath: # BASE_CP=$(sed -n "s/^OPENSEARCH_CLASSPATH='\(.*\)'/\1/p" /usr/share/opensearch/bin/opensearch-env) { printf '%s\n' "${BASE_CP//:/$'\n'}" | grep '/lib/tools/plugin-cli/' | sed 's/^/from opensearch-env: /' printf '%s\n' /usr/share/opensearch/lib/tools/plugin-cli/*.jar | sed 's/^/from opensearch-plugin additional cp: /' } from opensearch-env: /usr/share/opensearch/lib/tools/plugin-cli/opensearch-plugin-cli-3.6.0.jar from opensearch-env: /usr/share/opensearch/lib/tools/plugin-cli/commons-lang3-3.18.0.jar from opensearch-env: /usr/share/opensearch/lib/tools/plugin-cli/commons-io-2.16.0.jar from opensearch-env: /usr/share/opensearch/lib/tools/plugin-cli/commons-compress-1.28.0.jar from opensearch-env: /usr/share/opensearch/lib/tools/plugin-cli/bcpg-fips-2.1.11.jar from opensearch-env: /usr/share/opensearch/lib/tools/plugin-cli/bc-fips-2.1.2.jar from opensearch-plugin additional cp: /usr/share/opensearch/lib/tools/plugin-cli/bc-fips-2.1.2.jar from opensearch-plugin additional cp: /usr/share/opensearch/lib/tools/plugin-cli/bcpg-fips-2.1.11.jar from opensearch-plugin additional cp: /usr/share/opensearch/lib/tools/plugin-cli/commons-codec-1.18.0.jar from opensearch-plugin additional cp: /usr/share/opensearch/lib/tools/plugin-cli/commons-compress-1.28.0.jar from opensearch-plugin additional cp: /usr/share/opensearch/lib/tools/plugin-cli/commons-io-2.16.0.jar from opensearch-plugin additional cp: /usr/share/opensearch/lib/tools/plugin-cli/commons-lang3-3.18.0.jar from opensearch-plugin additional cp: /usr/share/opensearch/lib/tools/plugin-cli/opensearch-agent-policy-3.6.0.jar from opensearch-plugin additional cp: /usr/share/opensearch/lib/tools/plugin-cli/opensearch-plugin-cli-3.6.0.jar При этом на версии 3.1.0-alt3 из p10 ошибки нету, потому что нет дублирования: # BASE_CP=$(sed -n "s/^OPENSEARCH_CLASSPATH='\(.*\)'/\1/p" /usr/share/opensearch/bin/opensearch-env) { printf '%s\n' "${BASE_CP//:/$'\n'}" | grep '/lib/tools/plugin-cli/' | sed 's/^/from opensearch-env: /' printf '%s\n' /usr/share/opensearch/lib/tools/plugin-cli/*.jar | sed 's/^/from opensearch-plugin additional cp: /' } from opensearch-plugin additional cp: /usr/share/opensearch/lib/tools/plugin-cli/bc-fips-2.0.0.jar from opensearch-plugin additional cp: /usr/share/opensearch/lib/tools/plugin-cli/bcpg-fips-2.0.10.jar from opensearch-plugin additional cp: /usr/share/opensearch/lib/tools/plugin-cli/commons-compress-1.26.1.jar from opensearch-plugin additional cp: /usr/share/opensearch/lib/tools/plugin-cli/commons-io-2.16.0.jar from opensearch-plugin additional cp: /usr/share/opensearch/lib/tools/plugin-cli/opensearch-agent-policy-3.1.0.jar from opensearch-plugin additional cp: /usr/share/opensearch/lib/tools/plugin-cli/opensearch-plugin-cli-3.1.0.jar
Сломалось после обновления до 3.6.0-alt2.
opensearch-3.6.0-alt5 -> sisyphus: Sun Jul 05 2026 Andrey Cherepanov <cas@altlinux> 3.6.0-alt5 - Did not use autogenerated jar list (ALT #59715).