Skip To Content

Share a project package

Project packages (.ppkx) make it easy to share complete projects. A project package is a file that contains all maps and the data referenced by its layers, as well as folder connections, toolboxes, geoprocessing history, and attachments. Project packages can be used for sharing projects between colleagues in a work group, across departments in an organization, or with any other ArcGIS users through ArcGIS Online or ArcGIS Enterprise. Project packages can also be used to create an archive of a particular project that contains a snapshot of its current state.

Create a project package

When sharing your content within your organization, it's likely that enterprise databases, UNC path data, styles, and connections will be accessible for those consuming the project package. In this case, unchecking the Share outside of organization option is a good choice. Enterprise database data, UNC path data, styles, and connections in your map will be referenced, not copied, to the project package. However, when sharing your content outside your organization, enterprise databases, UNC path data, styles, and connections to folders, servers, and databases will not be accessible, and checking the Share outside of organization option to include the data in your package is a better choice. If you check this option, data is extracted from enterprise databases and UNC path folders and copied into a file geodatabase, styles will be copied, and all connections will be removed.

Project itemShare inside organizationShare outside of organizationNotes

Maps

Consolidate local data Reference UNC path Reference Enterprise Geodatabase data

Consolidate local data, UNC path, and enterprise geodatabase data.

Data that is reused is only copied to the project package once.

Scenes

Consolidate local data Reference UNC path Reference Enterprise Geodatabase data

Consolidate local data, UNC path, and enterprise geodatabase data.

Data that is reused is only copied to the project package once.

Basemaps

Consolidate local data Reference UNC path Reference Enterprise Geodatabase data

Consolidate local data, UNC path, and enterprise geodatabase data.

Data that is reused is only copied to the project package once.

Layouts

Consolidate local data Reference UNC path Reference Enterprise Geodatabase data

Consolidate local data, UNC path, and enterprise geodatabase data.

Data that is reused is only copied to the project package once.

Reports

Consolidate local data Reference UNC path Reference Enterprise Geodatabase data

Consolidate local data, UNC path, and enterprise geodatabase data.

Data that is reused is only copied to the project package once.

Toolboxes

Consolidate local data Reference UNC path Reference Enterprise Geodatabase data

Consolidate local data, UNC path, and enterprise geodatabase data.

Input, output, and intermediate data is not copied.

Model project data is copied, but input data is not.

The default toolbox is always copied to the project package.

See additional considerations below.

To exclude all toolboxes from the package except the default project toolbox, uncheck the Include Toolboxes option.

Geoprocessing History

Included

Included

Geoprocessing history is copied as well as all resources (models, scripts, data, layers, and files) needed to reexecute tools.

To exclude all geoprocessing history from the package, uncheck the Include History Items option.

Data Connections

Consolidate local data and remove connections from Catalog pane

Maintain UNC path connections

Maintain Enterprise Geodatabase connections

Copy project default.gdb

Consolidate local data, UNC path, and Enterprise Geodatabase data

Remove all connections from the Catalog pane

Copy project default.gdb

Attachments

Consolidate local attachments

Reference UNC path attachments

Consolidate local attachments

Consolidate UNC path attachments

When a project package is extracted, attachments are stored in <extracted location>\commondata\userdata. For more information on where projects are extracted, see Open a project.

Styles

Consolidate local styles

Reference UNC path styles

Consolidate local styles

Reference UNC path styles

Tasks

Included

Included

Locators

Consolidate local data Reference UNC path Reference Enterprise Geodatabase data

Consolidate local data, UNC path, and enterprise geodatabase data.

Folder connections

Included

Removed

Items in the connection are not copied.

Server connections

Included

Removed

Items in the connection are not copied.

Database connections

Included

Removed

Items in the connection are not copied.

Workflow connections

Included

Removed

Items in the connection are not copied.

Data Reviewer connections

Consolidate local data Reference UNC path Reference Enterprise Geodatabase data

Consolidate local data, UNC path, and enterprise geodatabase data.

All result sessions included.

Data Reviewer batch jobs

Included

Included

  1. In the Package group on the Share tab, click New Project Package Project Package.

    The Package Project pane appears.

  2. Specify where to save your package, either to your online account or as a file on disk.
  3. Provide the name and, if saving the package to a file, the location for your new package on disk.
  4. Complete the Summary and Tags fields.
  5. Use the Share outside of organization option if you want to include data from an enterprise database or UNC path location, include styles, and remove connections to folders, servers, and databases.
  6. Use the Include Toolboxes option to include all project toolboxes and the data referenced by their tools.

    If this option is not checked, project toolboxes, except the default toolbox, will not be included. Toolboxes inside connected folders are not considered project toolboxes and are not impacted by this setting.

  7. Use the Include History Items option to include all geoprocessing history items and the data required to re-execute the history item.

    If this option is not checked, none of the project's geoprocessing history items will be included. If history items are included, ensure that all data required to re-execute the tool still exists and is accessible. If it's not, packaging will not be successful.

  8. If you are uploading your package to an online account, use the Folder menu to specify where the package will be stored in your portal content. The package is stored in the root of your content by default. Optionally click the browse button Browse to create a folder or choose an existing one. You can also type the name of the desired folder in the text box.
  9. If you're uploading your package to an online account, specify how it will be shared:
    • My Organization—If you are signed in with an organizational account, you see this option. This option allows your content to be shared with all authenticated users in the organization.
    • Everyone—This option makes your content public. Anyone can access and see it.
    • Groups—You can share your content with groups you belong to and their members.
  10. Add the items you want to include to Attachments. This option allows you to include other content, such as detailed documentation, reports, and graphs. The following types of files cannot be included: .js, .vbs, .py, .pyc, .pyo, .bat, and .ocx. Also, only signed .dll and .exe files are allowed.
  11. Click Analyze to check for any errors or issues. You must resolve all errors. If any issues are discovered, they appear on the Messages tab. Right-click each message to get more information, read the help for the error or warning, and access suggested fixes.
  12. Once it's validated, click Package to create your package.

See Open a project to learn how to unpack your project package.

Geoprocessing considerations

A project package will include any tool (model or script) contained in a toolbox that has been added to the project. The tools and any data required to run them will be included in the project package. This is similar to tools in the project Geoprocessing History; any tool that has been run will be packaged, including any data required to rerun the tool. A common practice when building script tools is to build paths to datasets using a relative path from the toolbox location. With a project, a better pattern is to reference data based on the .aprx project file location, rather than the toolbox location. Consolidating and packaging a project will move items relative to the .aprx file. The following approach should be used to build up paths to datasets:

import os
prjLocation = arcpy.mp.ArcGISProject("CURRENT").homeFolder
oilwells = os.path.join(prjLocation, "data\\oil.gdb\\wells")
print (oilwells)
# 'C:\\MyProjects\\OilExploration\\SoutWestWells.aprx\\data\\oil.gdb\\wells'

Related topics