find.package {base} | R Documentation

## Find Packages

### Description

Find the paths to one or more packages.

### Usage

    find.package(package, lib.loc = NULL, quiet = FALSE,
                 verbose = getOption("verbose"))

    path.package(package, quiet = FALSE)

### Arguments

`package` | character vector: the names of packages.
`lib.loc` | a character vector describing the location of R library trees to search through, or `NULL`. The default value of `NULL` corresponds to checking the loaded namespace, then all libraries currently known in `.libPaths()`.
`quiet` | logical. Should this not give warnings or an error if the package is not found?
`verbose` | a logical. If `TRUE`, additional diagnostics are printed.

### Details

`find.package` returns path to the locations where the given packages are found. If `lib.loc` is `NULL`, then loaded namespaces are searched before the libraries. If a package is found more than once, the first match is used. Unless `quiet = TRUE` a warning will be given about the named packages which are not found, and an error if none are. If `verbose` is true, warnings about packages found more than once are given. For a package to be returned it must contain a either a ‘Meta’ subdirectory or a ‘DESCRIPTION’ file containing a valid `version` field, but it need not be installed (it could be a source package if `lib.loc` was set suitably).

`find.package` is not usually the right tool to find out if a package is available for use: the only way to do that is to use `require` to try to load it. It need not be installed for the correct platform, it might have a version requirement not met by the running version of R, there might be dependencies which are not available, ....

`path.package` returns the paths from which the named packages were loaded, or if none were named, for all currently attached packages. Unless `quiet = TRUE` it will warn if some of the packages named are not attached, and given an error if none are.

### Value

A character vector of paths of package directories.

### See Also

`path.expand` and `normalizePath` for path standardization.

[Package base version 3.3.0 Index]