jarファイルにトークンクラスファイルがあります。トークン・クラス・ファイルは、jdbcを使用してデータベースからデータを取り出すクラスです。しかし、jarファイルを呼び出すと、外部のmysqlドライバjarファイルを再認識していないようです。mysqlドライバjarが認識されない
エラーがこの行を指しています Class.forName(driver);.
私はantビルドファイルと私が考えることができるすべてのクラスパスでmysqlドライバを参照しました。
<mkdir dir="build/server/dist"/>
<jar destfile="build/server/dist/VNCOverHTTPServer.jar" basedir="build/server/classes">
<manifest>
<attribute name="Main-Class" value="jhttpserver.JHttpServer"/>
<attribute name="Class-path" value="lib/servlet.jar lib/mysql-connector-java-5.1.7-bin.jar config/"/>
</manifest>
</jar>
何も作業していませんか?どんな助けもありがとう。
にjava.lang.ClassNotFoundException
感謝します。javaでjava.security.AccessController.doPrivileged(ネイティブメソッド)でjava.net.URLClassLoader $ 1.run(URLClassLoader.java:200) で mysqlの。 net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:316) at sun.misc.Launcher $ AppClassLoader.loadClass(Launcher.java:288) at java。 lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:374) at java.lang.Class。 forName0(ネイティブメソッド) at java.lang.Class.forName(Class.java:169) at socksviahttp.server.token.getConnection(token.java:58) at socksviahttp.server.token.exists(token.java) :javax.servlet.http.HttpServlet.service 75)socksviahttp.server.ServletSocks.doPost(ServletSocks.java:328で ) (HttpServlet.java:760)javax.servlet.http.HttpServlet.serviceで (HttpServletを.javaファイル:jhttpserver.JHttpServerThread.run(JHttpServerThread.java:217)
mysql-connector jarがbuild/server/dist/libにあり、java -jar VNCOverHTTPServer.jarを使用して呼び出されます。そうでないと、ライブラリは見つかりません – Petesh
yes jarファイルはまだ認識されていません –