Matlab Crushes when new .m file is added

조회 수: 1 (최근 30일)
Stelios Fanourakis
Stelios Fanourakis 2019년 6월 16일
편집: John D'Errico 2019년 6월 16일
Whenever I add a new .m file in the current folder, Matlab doesn't automatically recognize it and it prompts me to either change folder or add to path and then it just comes the error " Undefined Function" although the function exists at the working folder.
I have to shut down Matlab and reboot it in order to recognize it.
Any ideas why is this happening? Thanks

채택된 답변

John D'Errico
John D'Errico 2019년 6월 16일
편집: John D'Errico 2019년 6월 16일
This is not a crash, nor even a crush. It is just that MATLAB caches the files in the MATLAB directories. It does this to enhance speed, pre-processing those files when it starts up. Therefore MATLAB does not watch those directories, not expecting any changes in them. This is why things "work" again for you when you restart, because MATLAB cached your changed files.
That means the solution is that you should NOT be using those directories! Do NOT save your files into the supplied directories. Instead, add your own directories to the search path. You can save files to your own directories with no problem at all.

추가 답변 (1개)

Walter Roberson
Walter Roberson 2019년 6월 16일
Sometimes MATLAB can get confused and you need to rehash. This can happen in various ways, including if a file that is not on the current path is modified, such as if you are cd'ing back and forth between directories.
If you are adding files to directories that are underneath the MATLAB installation (not a good idea) then rehash toolboxcache
In some cases involving network drives, MATLAB might not get notified when a file is updated, and you might need to rehash
If you are modifying a .m file which has been invoked in the current session, then MATLAB will not always notice the change, and you might need to clear the function name.

카테고리

Help CenterFile Exchange에서 Search Path에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by