java类没有通过cmd编译代码

时间:2017-01-05 11:19:03

标签: java

我有一个叫做Listenermain.java的Java类,它依赖于下面的类的外部库。

import Luxand.FSDK;

import php.java.bridge.JavaBridgeRunner;


public class Listenermain {

public static final String JAVABRIDGE_PORT = "1699";//8080
static final JavaBridgeRunner runner
        = JavaBridgeRunner.getInstance(JAVABRIDGE_PORT);

/**
 * @param args the command line arguments
 * 
 */
public static void main( String[] args ) {
    // TODO code application logic here
    try {
        System.loadLibrary("facesdk");
        int res = FSDK
                .ActivateLibrary("pZo9jhbhbybgvbh");
        FSDK.Initialize();
        FSDK.SetFaceDetectionParameters(true, true, 384);
        FSDK.SetFaceDetectionThreshold(5);

        if (res == FSDK.FSDKE_OK) {
            System.out.printf("FaceSDK activated", "FaceSDK activated\n");
        } else {
            System.out.printf("Error activating FaceSDK: ", res + "\n");
        }
    } catch (java.lang.UnsatisfiedLinkError e) {
        System.out.printf("exception ", e.getMessage());
    }
    try {
        runner.waitFor();
    } catch (Exception ex) {
        System.out.printf("Error: ", ex.getMessage() + "\n");
    }
    // System.exit(0);
}

}

我使用以下cmd行语法编译我的类

javac -classpath ".;C:\Users\daviestobialex\Workarea\openshiftmatcher\libs\JavaBridge.jar;C:\Users\daviestobialex\Workarea\openshiftmatcher\libs\FaceSDK.jar;C:\Users\daviestobialex\Workarea\openshiftmatcher\libs\jna.jar" Listenermain.java

并且它不会吐出任何错误,但当我尝试使用此语法再次通过命令行界面运行代码时

`java -classpath . Listenermain`

我收到以下错误

  

线程“main”java.lang.NoClassDefFoundError中的异常:Listenermain中的php / java / bridge / JavaBridgeRunner。(Listenermain.java:19)   引起:java.lang.ClassNotFoundException:php.java.bridge.JavaBridgeRunner

因为Listenermain.class没有用我指定的依赖项编译而感到困惑。

1 个答案:

答案 0 :(得分:1)

运行程序时,还需要指定类路径以解决类依赖性。

尝试这样:

java -classpath ".;C:\Users\daviestobialex\Workarea\openshiftmatcher\libs\JavaBridge.jar;C:\Users\daviestobialex\Workarea\openshiftmatcher\libs\FaceSDK.jar;C:\Users\daviestobialex\Workarea\openshiftmatcher\libs\jna.jar" Listenermain