- Create a new script outside of any package directories
- Call the package function from the new script (>> mypackage.myfile)
- Select the new script as the main compilation file.
How to compile functions that are in a package folder (i.e. has the + prefix)?
3 次查看(过去 30 天)
显示 更早的评论
I have MATLAB code that has been organized into namespaces, +myPackage/myFunction.m. When I try to compile this function to a Java Package with Compiler SDK (2018a) app, I get an error with the following log file:
mcc -W 'java:myNamespace,myClass' -T link:lib -d C:\path_to_project\my_proj\for_testing class{learn:C:\path_to_project\+myPackage\myFunction.m}
Could not determine type of the MATLAB file 'myFunction.m'. Please make sure that you are compiling MATLAB Program files.
0 个评论
采纳的回答
Matthew Esch
2018-7-2
编辑:Matthew Esch
2018-7-2
Good Morning Jessee,
This is a known limitation our developers are considering for a future release. MATLAB files in packages can be compiled successfully as dependencies, however they cannot be used as exported functions. I apologize for the inconvenience this has caused.
Consider moving the functions you want to compile to another non-package folder. Alternatively, if the "main" file you would like to compile is in the package:
If you want to access a function through Namespace in deployed Java package, instead of putting MATLAB functions in packages you can leverage "deploytool". It has the capability to generate Java Libraries with a specific namespace.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Java Package Integration 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!