我有一个名为getFeatures.m
的函数文件,如下所示:
function [features] getFeatures()
% Import the XPath classes
import javax.xml.xpath.*
% other code
end
function [name] = getName()
% Import the XPath classes
import javax.xml.xpath.*
% other code
end
正如你所看到的,这两个函数都导入了xpath库,因为我有很多需要导入该类的函数我怎么能这样做一次呢?
答案 0 :(得分:2)
我偶然发现了同样的问题。我的个人(和丑陋!)解决方法是定义一个执行导入的方法;你仍然需要调用该函数,但至少它将导入分组在一个地方,尽管是在字符串内。
function cmd = initJava()
cmd = 'import package.*';
if nargout == 0
warning('off','MATLAB:Java:DuplicateClass');
evalin('caller',cmd);
warning('on','MATLAB:Java:DuplicateClass');
end;
end
可以将其称为initJava()
或eval(initJava())
。如果我没记错的话,第一个并不总是按照它应该做的那样做,但你必须自己测试一下。
如果某人有更好/更好/其他解决方案,我很有兴趣听到那个。