2016-11-12 183 views
0

我的Java应用程序编译出现问题。无法找到或加载主类Mysql

文件夹结构:

的src/LogServer.java(这是主类)

的src/SocketThread.java

我也使用MySQL驱动在里面。 此文件不在包中。

当我运行:

javac -classpath mysql-connector-java-3.1.14-bin.jar *.java 

一切工作正常。

见编译:

java -classpath mysql-connector-java-3.1.14-bin.jar LogServer 

编译器说:

[email protected]:~/workspace/LogServer/src$ javac -classpath mysql-connector-java-3.1.14-bin.jar *.java 

[email protected]:~/workspace/LogServer/src$ java -classpath mysql-connector-java-3.1.14-bin.jar LogServer 
Error: Could not find or load main class LogServer 

[email protected]:~/workspace/LogServer/src$ java LogServer 
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver 
    at jdk.internal.loader.BuiltinClassLoader.loadClass([email protected]/BuiltinClassLoader.java:366) 
    at jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass([email protected]/ClassLoaders.java:184) 
    at java.lang.ClassLoader.loadClass([email protected]/ClassLoader.java:419) 
    at java.lang.Class.forName0([email protected]/Native Method) 
    at java.lang.Class.forName([email protected]/Class.java:294) 
    at LogServer.init(LogServer.java:22) 
    at LogServer.main(LogServer.java:51) 
[email protected]:~/workspace/LogServer/src$ 

回答

0

您将需要使用-classpath参数。在你的类路径中,你需要'。'以确定您的当前目录位于classpath和mysql-connector-java-3.1.14-bin.jar中。所以你把这两个放在一个列表中。在Linux上,元素由':'分隔。在Windows上,它是';'。

java -classpath .:mysql-connector-java-3.1.14-bin.jar LogServer 

编辑:大量编辑

+0

其实我从src文件夹中运行Java和javac其中存在的类和jar文件。并且它不起作用 – jarekbutek

+0

然后从命令java -classpath中删除src; mysql-connector-java-3.1.14-bin.jar LogServer – ProgrammersBlock

+0

我知道,但它不工作。我在linux上运行它。这很奇怪,当我试图编译其他应用程序一切正常。 – jarekbutek

相关问题