The server module has a dependency on lucene spatial3d library but it is never used. The only dependency on that library happens in the spatial module which is accessed via the server module at the moment. There might be a better way to handle this dependency so opening this issue to track it.
server/src/main/java/module-info.java
/*
 * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
 * or more contributor license agreements. Licensed under the Elastic License
 * 2.0 and the Server Side Public License, v 1; you may not use this file except
 * in compliance with, at your election, the Elastic License 2.0 or the Server
 * Side Public License, v 1.
 */
module org.elasticsearch.server {
    requires java.logging;
    requires java.security.jgss;
    requires java.sql;
    requires java.management;
    requires jdk.unsupported;
    requires org.elasticsearch.cli;
    requires org.elasticsearch.base;
    requires org.elasticsearch.geo;
    requires org.elasticsearch.lz4;
    requires org.elasticsearch.pluginclassloader;