find the absolute path of a package
    12 views (last 30 days)
  
       Show older comments
    
Hi!
is there an obvious way to find out the absolute path of a package? I mean, if I define a package directory some where in my file system, say,
mkdir <mypath>/+myPackage
and the add its location to the path
addpath <mypath>
then myPackage is active and I can invoke functions from there. But how can I ask the system where this package resides? I mean
which myPackage
does not work. I could make a which to a function inside the myPackage, yes, but I have hundreds of packages, and packages inside packages, and they don't contain the same functions.
any idea? Daniel
0 Comments
Accepted Answer
  Guillaume
      
      
 on 3 Dec 2014
        
      Edited: Guillaume
      
      
 on 3 Dec 2014
  
      It's the what function you want:
s = what('event'); %there may be several packages with the same name. s may be an array of structs
s.path
You can also get a lot of information from the meta.package classes (but not the path unfortunately):
mpack = meta.package.fromName('event')
allpackages = meta.package.getAllPackages
More Answers (1)
  Image Analyst
      
      
 on 3 Dec 2014
        If you know the name of one of the m-files in the package, then you can do this:
% Determine folder where someFunction.m lives.
folder = fileparts(which('someFunction.m'));
See Also
Categories
				Find more on Matrix Indexing 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!
