Do you have same thing happening with 3.9.12?

T

On Thu, Mar 12, 2026, 10:47 Thorsten Heit <[email protected]> wrote:

> Hi,
>
> I forgot to mention that this was tested with Maven 3.9.13 and Java 25
> (Temurin 25.0.2 to be precise) on Windows 11 if that matters.
>
>
> /Thorsten
>
> Am 12.03.26 um 10:32 schrieb Thorsten Heit:
> > Hi,
> >
> > I have asked this on the Solr mailing list before, but got no helpful
> > answer so far. I hope someone here as a glue what's going on:
> >
> >
> > I have written an internal library that uses SolrJ for connecting to a
> > (remote) Solr server. The library is a multi-module project consisting
> > of several parts; the interesting ones are:
> >
> > - a common module that represents the bridge to Solr (by using SolrJ)
> > - a test module that implements JUnit tests and an integration test;
> > uses jetty-maven-plugin to start a local Solr server with an empty
> > database before the IT is executed
> >
> >
> > Actually I'm using the following dependencies in the IT module pom
> > (unnecessary parts omitted):
> >
> > <dependencies>
> >      <dependency>
> >          <groupId>org.apache.logging.log4j</groupId>
> >          <artifactId>log4j-core</artifactId>
> >      </dependency>
> >      <dependency>
> >          <groupId>${project.groupId}</groupId>
> >          <!-- bridge to connect to Solr: -->
> >          <artifactId>solr-connector-common</artifactId>
> >          <version>${project.version}</version>
> >      </dependency>
> >      <dependency>
> >          <groupId>org.apache.solr</groupId>
> >          <artifactId>solr-core</artifactId>
> >          <version>${solr.version}</version>
> >      </dependency>
> >
> >      <dependency>
> >          <groupId>org.junit.jupiter</groupId>
> >          <artifactId>junit-jupiter-engine</artifactId>
> >          <scope>test</scope>
> >      </dependency>
> >      <dependency>
> >          <groupId>org.junit.jupiter</groupId>
> >          <artifactId>junit-jupiter-params</artifactId>
> >          <scope>test</scope>
> >      </dependency>
> > </dependencies>
> >
> > (the property "solr.version" is defined in the parent pom)
> >
> >
> > With solr-core-9.10.1 "mvn dependency:tree" gives me
> >
> > (...)
> > [INFO] +- org.apache.solr:solr-core:jar:9.10.1:compile
> > [INFO] |  +- org.apache.lucene:lucene-core:jar:9.12.2:compile
> > [INFO] |  +- org.apache.lucene:lucene-analysis-common:jar:9.12.2:compile
> > [INFO] |  +- org.apache.lucene:lucene-queries:jar:9.12.3:compile
> > (...)
> > [INFO] |  \- org.xerial.snappy:snappy-java:jar:1.1.10.8:runtime
> > [INFO] +- org.eclipse.jdt:org.eclipse.jdt.annotation:jar:2.4.100:provided
> > [INFO] +- org.junit.jupiter:junit-jupiter-engine:jar:6.0.3:test
> > [INFO] |  +- org.junit.platform:junit-platform-engine:jar:6.0.3:test
> > [INFO] |  |  +- org.opentest4j:opentest4j:jar:1.3.0:test
> > [INFO] |  |  \- org.junit.platform:junit-platform-commons:jar:6.0.3:test
> > [INFO] |  +- org.junit.jupiter:junit-jupiter-api:jar:6.0.3:test
> > [INFO] |  +- org.apiguardian:apiguardian-api:jar:1.1.2:test
> > [INFO] |  \- org.jspecify:jspecify:jar:1.0.0:runtime
> > [INFO] \- org.junit.jupiter:junit-jupiter-params:jar:6.0.3:test
> > (...)
> >
> >
> > What puzzles me that the same command with solr-core-10.0.0 only shows
> >
> > (...)
> > [INFO] +- org.apache.solr:solr-core:jar:10.0.0:compile
> > [INFO] +- org.eclipse.jdt:org.eclipse.jdt.annotation:jar:2.4.100:provided
> > [INFO] +- org.junit.jupiter:junit-jupiter-engine:jar:6.0.3:test
> > [INFO] |  +- org.junit.platform:junit-platform-engine:jar:6.0.3:test
> > [INFO] |  |  +- org.opentest4j:opentest4j:jar:1.3.0:test
> > [INFO] |  |  \- org.junit.platform:junit-platform-commons:jar:6.0.3:test
> > [INFO] |  +- org.junit.jupiter:junit-jupiter-api:jar:6.0.3:test
> > [INFO] |  +- org.apiguardian:apiguardian-api:jar:1.1.2:test
> > [INFO] |  \- org.jspecify:jspecify:jar:1.0.0:runtime
> > [INFO] \- org.junit.jupiter:junit-jupiter-params:jar:6.0.3:test
> > (...)
> >
> > i.e. no dependencies at all in solr-core-10.0.0 in the tree. Therefore
> > the IT test fails with ClassNotFoundExceptions when Jetty starts the
> > local server:
> >
> > (...)
> > [WARNING] Failed startup of context
> > oeje10mp.MavenWebAppContext@54bd2345{/solr,/solr,b=file:///(...)/solr-
> > connector-tests/src/main/
> > webapp/,a=STOPPED,h=oeje10s.SessionHandler@10897221{STOPPED}}{file:///
> > (...)/solr-connector-tests/src/main/webapp/}
> > java.lang.NoClassDefFoundError: org/apache/solr/common/cloud/
> > ClusterPropertiesListener
> >      at java.lang.Class.getDeclaredConstructors0 (Native Method)
> >      at java.lang.Class.privateGetDeclaredConstructors (Class.java:2985)
> >      at java.lang.Class.getConstructor0 (Class.java:3180)
> >      at java.lang.Class.getDeclaredConstructor (Class.java:2491)
> >      at
> >
> org.eclipse.jetty.ee10.servlet.ServletContextHandler$ServletScopedContext.createInstance
> (ServletContextHandler.java:2023)
> >      at org.eclipse.jetty.ee10.servlet.BaseHolder.createInstance
> > (BaseHolder.java:203)
> > (...)
> >
> >
> > But:
> >
> > When you look at the pom of solr-core-10.0.0 there are indeed lots of
> > dependencies; if I counted correctly 76 in sum, 9 having scope
> > "compiled" and 67 with scope "runtime".
> > Additionally the poms of solr-core-9.10.1 and solr-core-10.0.0 don't
> > differ much. The dependencies are basically the same, some with newer
> > versions; a few removed, a few added IIRC.
> >
> >
> > To make the IT work again I manually have to add about a third of the
> > dependencies defined in solr-core-10.0.0 such as org.apache.solr:solr-
> > solrj, org.apache.solr:solr-solrj-zookeeper, tons of lucene dependencies
> > etc.
> >
> >
> > Has somehere a clue why this is necessary?
> >
> >
> > Regards
> >
> > Thorsten
>
>

Reply via email to