Забудьте переменную окружения CLASSPATH
. Это большая шутка. Он игнорируется почти всем остальным, кроме низкоуровневой команды java com.example.Foo
. Это игнорируется при добавлении аргумента -jar
. Он игнорируется при добавлении аргумента -cp
или -classpath
. Это игнорируется IDE и веб-серверами / серверами приложений. Эта переменная окружения была задумана как удобство для начинающих. Но кроме этого, это бесполезно.
Это сводится к тому, что файл JAR должен быть помещен в любой из существующих путей / путей по умолчанию пути к классам времени выполнения рассматриваемого приложения Java, или что по крайней мере путь к файлу JAR должен быть добавлен в путь к классу выполнения рассматриваемого Java-приложения.
Поскольку вы говорите о сервере и учитываете тот факт, что переменная окружения CLASSPATH
не работает, я предполагаю, что на самом деле это веб-сервер / сервер приложений, такой как Apache Tomcat. Если это действительно так, вам нужно либо удалить JAR-файл в папку Tomcat/lib
(если вы используете подход с управлением контейнером DataSource
для быстрого пула соединений), либо в папку WEB-INF/lib
веб-приложения (если вы используете Class#forName()
подход бедного человека для загрузки водителя).
Если это не так и это на самом деле Java-приложение, которое должно быть выполнено в виде JAR, то вам нужно указать путь к классу в MANIFEST.MF
файле рассматриваемого JAR. Но если это не так и это свободный файл .class
, то вам нужно указать classpath в аргументе -cp
или -classpath
команды java
. Чтобы уберечь себя от ввода его снова и снова при выполнении, просто создайте файл .sh
с командой.