2011-03-20 17 views
5

Mi programa java utiliza el código de matlab empaquetado como archivos jar para el procesamiento de imágenes. El problema es cuando llamo a una función (escrita por mí) con una llamada a 'mmreader' por primera vez, funciona bien. Sin embargo, cualquier llamada posterior a una función (igual o diferente) que llame a 'mmreader' no funciona y aparece un error que indica que no se ha encontrado la función mmreader.¿Cómo acceder a una función de matlab desde código java?

También estoy enfrentando un problema similar en otra parte de mi aplicación donde la función call to matlab simplemente arroja una excepción, el mismo código funciona bien en otros archivos.

try{ 
     vplayer.playmov(player_params); 
    } 
catch(Exception e){ 
      System.out.println("error playing cluster"); 
    } 
+0

¿Ha comprobado http://stackoverflow.com/questions/5003388/executing-a-matlab-function-using-java? parece un duplicado – Augusto

+1

@Augusto no, no lo es. Ya estoy usando Matlab Javabuilder JA para empaquetar el código de matlab en jar. – meraj

+0

¿Estás recibiendo una excepción? publicar la stacktrace – Saideira

Respuesta

1

tomaría un rápido vistazo a este enlace Accessing Matlab from Java Aquí hay un par de extractos de la página que pudiera ser útil.

mlapp.MLApp mlApp = new mlapp.MLApp(); 

String result = mlApp.execute("a = [1 2 3 4; 5 6 7 8;]"); 
System.out.println("Execute result is " + result); 

Dentro de estas citas, se puede definir una función MATLAB, sólo asegúrese de que está asignando la salida al tipo de datos correcto.

La parte más importante de ese enlace es;

Suponemos que ha descargado y ampliado el kit J-Integra® desde http://j-integra.intrinsyc.com/ y lo ha instalado correctamente.

Sin eso instalado, no puede hacer la declaración anterior.

0

Además de eso, en MATLAB puede crear un JAR con sus funciones y firmar que JAR funcione solo con sus aplicaciones. Tal vez necesites el tiempo de ejecución de MATLAB para hacer que la aplicación funcione, no estoy seguro de eso.

Cuestiones relacionadas