Я пытаюсь соединиться с mysql базой данных с помощью Java на windows7. Несмотря на добавление полного URL jdbcdriver файла банки в ПУТИ К КЛАССУ, java.lang. ClassNotFoundException: com.mysql.jdbc. Драйвер брошен. Кто-либо мог сказать мне, что я пропускаю здесь? Это работает, если я добавляю файл банки в библиотеке проекта, но я хочу сделать это самим ПУТЕМ К КЛАССУ. Мой путь к классу похож на это - C:\jython2.5.1\javalib\mysql-connector-java-5.1.12-bin.jar
Я хочу прояснить, что это не фактический проект, я продолжаю работать. Я на самом деле использую Django с Jython, который требует, чтобы драйвер JDBC получил доступ к базе данных. Это - причина, почему я должен сделать это с помощью ПУТИ К КЛАССУ только.
Переменная среды CLASSPATH
используется только командой java.exe
и даже тогда только при использовании без любого из аргументов -cp
, -classpath
, -jar
. Он игнорируется такими IDE, как Eclipse, Netbeans и IDEA.
Эта переменная среды в реальном мире также считается плохой практикой, поскольку она нарушает переносимость. Т.е. программа X будет работать успешно, в то время как программа Y не будет работать без изменения CLASSPATH
. Это только «полезно» для Sun Oracle, чтобы предотвратить то, что начинающие устанут снова и снова вводить один и тот же путь к классам в аргументах -cp
или -classpath
, когда следуют Учебники по Java. В реальном мире предпочтительны пакетные файлы / файлы оболочки, где указывается только вся команда с аргументом -cp
/ -classpath
.
В вашем случае вы используете IDE. Путь к классам там называется «Путь сборки». В простых проектах Java он представляет и путь к классам времени компиляции и выполнения. Вы можете настроить его в свойствах проекта. Вы можете добавить целую папку, вы можете добавить отдельные / внешние файлы JAR, вы можете связать проекты и т.д. Используйте это. Забудьте об использовании переменной среды CLASSPATH
. Это была ошибка Sun Oracle. Они думали убедить начинающих, но в итоге они только запутались, поскольку они неправильно интерпретировали эту переменную среды как путь к классам .