get rid of "Multiple implementations"
So when I try and option click into a method, I get a little dialogue that says:
Multiple Implementations
And shows two links to the same file. One is absolute and one is relative
e.g.
../path/to/file
/absolute/path/to/file
So I think this has to do with me trying to setup mappings in PHP > SERVERS but I have unchecked:
Use Path Mappings
Which I thought would've fixed it.
It's not a big deal, except I think if I choose different options, it'll open up two files and I start to get
"This file has been modified on disk" dialogs ...
TIA
Please sign in to leave a comment.
Hi there,
It's for debugging only.
For me it sounds like you having a symbolic link (or similar) in your project (which points to some another location inside your project, so the same file is indexed twice). Or such folder is a part of the project itself .. as well as added as External Library (PHP | Includes).
If one of the above is the case .. then excluding such folder should do the job (Settings | Directories).
I am using a symbolic link e.g.
Absolute path:
/Users/msteudel/Documents/wwwroot
But I have a symlink in my home dir
/Users/msteudel/wwwroot -> /Users/msteudel/Documents/wwwroot
So can I use the symlink directory as long as it's consistent everywhere? Or should I only use the absolute directory?
And is the places it needs to be consistent just these two spots?
PHP | Includes
Settings | Directories
What if I created it from existing files, but used the symlink path?
Symlink is not a problem by itself (like in your case). Problems start to appear when you mix them up (e.g. when you have another symbolic link that points to a place that is already in the project -- because from IDE point of view it would be 2 different files).
Since it's not 100% clear for me what exactly you have got there, right now I can just suggest you to use real names/paths and not symbolic links. Once you make it working properly you can experiment further.
P.S.
I do use symbolic links myself (when attaching external libraries) but they do not "intersect" with the actual project files (as they point to a places outside the project). The actual project root is always a real path in my case.
So by removing the path to the project in PHP | Includes (which I had added) it fixed this problem. Thanks for the help.