java.lang.​IllegalArg​umentExcep​tion: NTFS ADS separator (':') in file name is forbidden

When I perform Coder with single precision conversion using fixed point designer, during Mex building, following errors happn.But when I perform Coder without precision conversion, no error happens. How can I fix this problem?
Exception in thread "AWT-EventQueue-0": java.lang.IllegalArgumentException: NTFS ADS separator (':') in file name is forbidden.
at org.apache.commons.io.FilenameUtils.indexOfExtension(FilenameUtils.java:746)
at org.apache.commons.io.FilenameUtils.getExtension(FilenameUtils.java:1069)
at com.mathworks.toolbox.coder.nide.editor.CoderFileBackingStore.<init>(CoderFileBackingStore.java:38)
at com.mathworks.toolbox.coder.nide.editor.CoderFileBackingStore.<init>(CoderFileBackingStore.java:30)
at com.mathworks.toolbox.coder.nide.NideArtifactSet.addSourceArtifact(NideArtifactSet.java:69)
at com.mathworks.toolbox.coder.nide.impl.CoderNideFacade.updateArtifactSet(CoderNideFacade.java:339)
at com.mathworks.toolbox.coder.nide.impl.CoderNideFacade.initFilesToModel(CoderNideFacade.java:304)
at com.mathworks.toolbox.coder.nide.impl.CoderNideFacade.access$800(CoderNideFacade.java:63)
at com.mathworks.toolbox.coder.nide.impl.CoderNideFacade$4.propertyChange(CoderNideFacade.java:207)
at java.beans.PropertyChangeSupport.fire(PropertyChangeSupport.java:335)
at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:327)
at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:263)
at com.mathworks.toolbox.coder.nide.impl.CoderNideAppModel.fireInputFilesChanged(CoderNideAppModel.java:175)
at com.mathworks.toolbox.coder.nide.impl.CoderNideAppModel.setInputFiles(CoderNideAppModel.java:171)
at com.mathworks.toolbox.coder.wfa.build.VerifyCompatibilityModel$NormalMexBuilder$1.handleFiles(VerifyCompatibilityModel.java:534)
at com.mathworks.toolbox.coder.wfa.build.CoderBuildManager$Handler$1.run(CoderBuildManager.java:250)
at com.mathworks.mwswing.MJUtilities.runOnEventDispatchThread(MJUtilities.java:911)
at com.mathworks.toolbox.coder.wfa.build.CoderBuildManager$Handler.buildFinished(CoderBuildManager.java:247)
at com.mathworks.toolbox.coder.wfa.build.BuildCommand$1$1.run(BuildCommand.java:211)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

3 commentaires

Hi Adelie,
This is unfortunately a bug in the MATLAB Coder app when using singles conversion, and a fix for this will be available in an upcoming release.
As a workaround, you could try converting your project to a script ( https://www.mathworks.com/help/coder/ug/generate-a-matlab-script-to-build-a-project.html ) in order to generate the MEX function and use coder.runTest ( https://www.mathworks.com/help/coder/ref/coder.runtest.html ) to test the generated MEX function.
Apologies for the inconvenience!
Dear Mukund,
Thank you for the answer!
I am looking forward to the fix in an upcoming release.
Has this bug been fixed in a future release?

Connectez-vous pour commenter.

Réponses (2)

Hi Adelie,
This issue is likely caused by the NTFS ADS file types that are resident on the server. The NTFS ADS file type has file names in the format of "file1.txt:hidden" where there is a ":" separator in the file name after the file extension. The issue was possibly due to that fact that when MATLAB starts, it scans the MATLAB path in the File Explorer and encountered an illegal file name as described above. Please check if there is any file that has the NTFS ADS format (with a ":" in the file name) and remove these files from the MATLAB path.
I hope this fixes the issue!!
I am facing the same issue.
Exception in thread "AWT-EventQueue-0": java.lang.IllegalArgumentException: NTFS ADS separator (':') in file name is forbidden.
at org.apache.commons.io.FilenameUtils.indexOfExtension(FilenameUtils.java:746)
at org.apache.commons.io.FilenameUtils.getExtension(FilenameUtils.java:1069)
at com.mathworks.toolbox.slproject.project.archiving.ProjectArchiveInfoProvider.isProjectArchive(ProjectArchiveInfoProvider.java:78)
at com.mathworks.toolbox.slproject.project.archiving.ProjectArchiveInfoProvider.isApplicable(ProjectArchiveInfoProvider.java:74)
at com.mathworks.mlwidgets.explorer.model.FileDecorationModel.installExtensions(FileDecorationModel.java:80)
at com.mathworks.mlwidgets.explorer.model.FileDecorationModel.<init>(FileDecorationModel.java:61)
at com.mathworks.mlwidgets.explorer.model.FileDecorationCache.getDecorations(FileDecorationCache.java:94)
at com.mathworks.mlwidgets.explorer.model.table.UiFileList.getDecorations(UiFileList.java:167)
at com.mathworks.mlwidgets.explorer.util.UiFileSystemUtils.getDecorationSynchronously(UiFileSystemUtils.java:74)
at com.mathworks.mlwidgets.explorer.model.table.FileSystemExpansionProvider.getDecoration(FileSystemExpansionProvider.java:131)
at com.mathworks.mlwidgets.explorer.model.table.FileSystemExpansionProvider.getDecoration(FileSystemExpansionProvider.java:136)
at com.mathworks.mlwidgets.explorer.model.table.NameColumn$1.convert(NameColumn.java:62)
at com.mathworks.mlwidgets.explorer.model.table.NameColumn$1.convert(NameColumn.java:54)
at com.mathworks.widgets.grouptable.GroupingTableColumn.getValue(GroupingTableColumn.java:171)
at com.mathworks.widgets.grouptable.GroupingTableRow.getValueAt(GroupingTableRow.java:484)
at com.jidesoft.grid.TreeTableModel.getValueAt(Unknown Source)
at com.mathworks.mlwidgets.explorer.widgets.table.FileCellViewerCustomizer.getCellPainter(FileCellViewerCustomizer.java:142)
at com.mathworks.mlwidgets.explorer.widgets.table.FileCellViewerCustomizer.shouldShowCellViewer(FileCellViewerCustomizer.java:67)
at com.mathworks.mlwidgets.explorer.widgets.table.FileCellViewerCustomizer.shouldShowCellViewer(FileCellViewerCustomizer.java:35)
at com.mathworks.mwswing.CellViewerUtils$AbstractContext.mouseMoved(CellViewerUtils.java:242)
at java.awt.AWTEventMulticaster.mouseMoved(AWTEventMulticaster.java:330)
at java.awt.AWTEventMulticaster.mouseMoved(AWTEventMulticaster.java:329)
at java.awt.Component.processMouseMotionEvent(Component.java:6584)
at javax.swing.JComponent.processMouseMotionEvent(JComponent.java:3342)
at com.mathworks.widgets.grouptable.GroupingTable.processMouseMotionEvent(GroupingTable.java:1192)
at java.awt.Component.processEvent(Component.java:6308)
at java.awt.Container.processEvent(Container.java:2239)
at java.awt.Component.dispatchEventImpl(Component.java:4889)
at java.awt.Container.dispatchEventImpl(Container.java:2297)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4548)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
at java.awt.Container.dispatchEventImpl(Container.java:2283)
at java.awt.Window.dispatchEventImpl(Window.java:2746)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
at java.awt.EventQueue$4.run(EventQueue.java:733)
at java.awt.EventQueue$4.run(EventQueue.java:731)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
matlabVersion
24.1.0.2603908 (R2024a) Update 3
I have searched for files with ':' in the path but there isn't any. I am not sure what the fix is. I am unable to use Matlab

Catégories

En savoir plus sur MATLAB Coder dans Centre d'aide et File Exchange

Produits

Version

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by