Cannot remove folder that is on Matlab path from outside of Matlab
12 views (last 30 days)
Show older comments
Hi,
we are using a library that adds folders to the Matlab path. In addition we have an external build system that tries to delete temporary folders before building mex-Files and copying Simulink and Matlab files. For an unknown reason, Matlab prevents the removal of these folder as long they are on the Matlab path. I tried bdclose('all'), clear functions, clear mex, clear all, nothing helps. Why is Matlab preventing the removal?
I also tried to reproduce it manually. But than it works. It happens only with folders that have been added by this library.
Regards
Markus
3 Comments
Rigel Ifland
on 14 Jun 2019
I'm also having this problem, and it's pretty frustrating because it means that if anyone adds my code (stored on a network drive) to their path, I can't delete it until they have closed MATLAB or removed it from their path.
I can reproduce the problem (which seems to do with packages) by creating a few files:
demoFolder
└ +demoPackage
└ demoFile.m
If I add demoFolder to the path, I can't delete it from outside MATLAB. Once I remove it from the path I can.
MATLAB 2018b, Windows 10
dpb
on 14 Jun 2019
OTOH, it would be pretty frustrating for the user if they were using said code and all of a sudden it disappears in the middle of something they're doing, too...
Answers (2)
Giles
on 23 Apr 2022
I'm having what appears to be the same issue. In my case I've narrowed it down to something pretty simple: If there is a folder that has subfolders, and and at least one subfolder is on the MATLAB search path, then you can't delete the folder when MATLAB is running.
You can delete it if it has no subfolders on the search path, including if only it is on the search path and none of its subfolders.
Any ideas as to why?
0 Comments
See Also
Categories
Find more on Naming Conventions in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!