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 > >
