2016-07-13 15 views
-1

私はmatlabで実行する必要があるGroovyスクリプトを書きました。 groovy-all.jarファイルをmatlabのJavaClassPathに追加しました。Groovyコンソールオブジェクトを作成してGroovy ClassPathにjarファイルを追加するなど、いくつかのコマンドを実行できます。matlabでgroovyスクリプトを実行する

javaaddpath('C:\Users\rx49\Desktop\DoseWatch\QC_Project\Script_QA_images\groovy-all-2.4.7.jar'); 
javaaddpath('C:\Program Files\Java\jre1.8.0_91\lib\rt.jar'); 
console=groovy.ui.Console(); 
pth='C:\Users\rx49\Desktop\DoseWatch\QC_Project\Script_QA_images\file.groovy'; 
script = javaObject('java.io.File', pth) 
console.loadScriptFile(script); 

console.loadScriptFile関数は唯一の引数としてのjava.io.Fileオブジェクトを取ります。だから、私はmatlab javaObject関数を通して作成しました。以下のコードを実行すると、matlabは私に次のエラーを送ります:

??? Javaの例外が発生しました: のjava.lang.NullPointerException:7 console.loadScriptFile(スクリプト)でnullオブジェクトに==で

at org.codehaus.groovy.runtime.NullObject.invokeMethod(NullObject.java:91) 

at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:48) 

at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48) 

at org.codehaus.groovy.runtime.callsite.NullCallSite.call(NullCallSite.java:35) 

at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48) 

at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:57) 

at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:125) 

at groovy.ui.Console.loadScriptFile(Console.groovy:649) 

エラー> RUN_SCRIPTの方法EDT()を呼び出すことはできません。

+0

http://undocumentedmatlab.com/blog/using-groovy-in-matlab? –

+0

これは、Groovyファイルにメソッドを含むjarファイルを作成することになります。 –

+0

私はこのAPIを使用しようとしました:http://docs.groovy-lang.org/latest/html/gapi/groovy/ui/Console.html –

答えて

0

私はこれが動作する場合、私はMatlabの、またはスクリプトを持っていない、しかし、あなたが行うことができるはずのようにそれは感じている見当がつかない:

javaaddpath('C:\Users\rx49\Desktop\DoseWatch\QC_Project\Script_QA_images\groovy-all-2.4.7.jar'); 
pth='C:\Users\rx49\Desktop\DoseWatch\QC_Project\Script_QA_images\file.groovy'; 
shell = groovy.lang.GroovyShell(); 
matrix = shell.run(javaObject('java.io.File', pth)); 
関連する問題