Я наткнулся на ту же проблему. Мой личный (и некрасивый!) Обходной путь для этого - определение метода, который выполняет импорт; вам все равно придется вызывать эту функцию, но, по крайней мере, она группирует импорт в одном месте, хотя и внутри строк.
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())
. Если я правильно помню, первый не всегда делает то, что должен, но вам придется проверить это самостоятельно.
Если у кого-то есть лучшее / приятное / другое решение, мне очень интересно его услышать.