2017-01-05 14 views
1

私はJavaクラスがListenermain.javaと呼ばれていますが、このクラスは外部ライブラリに依存しています。javaクラスがcmdでコードをコンパイルしていません

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` 

私は

Exception in thread "main" java.lang.NoClassDefFoundError: php/java/bridge/JavaBridgeRunner at Listenermain.(Listenermain.java:19) Caused by: java.lang.ClassNotFoundException: php.java.bridge.JavaBridgeRunner

以下のエラーが出ます

Listenermain.classが私が指定した依存関係でコンパイルされなかった理由について混乱します。

+0

あなたはまた、runコマンドで依存ライブラリのパスを言及する必要があり、他のJVMは、依存関係を解決することはできません。 –

答えて

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 
+0

あなたは歓迎です:) – davidxxx

関連する問題