What is the difference between the Eclipse Package Explorer and the Eclipse Project Explorer?

Eclipse

Eclipse Problem Overview


It seems to me these two views are virtually identical, especially since Galileo. Is this true, or am I missing out on some features of one or the other?

Eclipse Solutions


Solution 1 - Eclipse

According to the Eclipse help, the Project Explorer

> provides a hierarchical view of the > artifacts in the Workbench, which is > customized by the specific > configuration of your Workbench.

With only the java developer tools (JDT) installed the Project Explorer nearly looks and behaves for java projects as the Package Explorer (including refactoring and other source code operations in the context menu). But Project Explorer is usable for other languages and project types as well.

Additional plugins contributes "extra information" to the Project Explorer view making it much more "sophisticated". For example if you have the web tools installed and you have a Dynamic Web Project, the Project Explorer shows you additional tree nodes like Deployment Descriptor and JavaScript Resources. You can see (and configure) all available contributions in Project Explorer / Customize View... / Content.

For example using SpringSource Tool Suite 2.1.0 I have additional nodes for web projects, spring beans and web services. Because of this I favor using the Project Explorer.

Solution 2 - Eclipse

I believe the Project Explorer is meant as the successor for the Navigator, and is (for the most part) language-agnostic.

The Package Explorer is specifically for Java projects, that's why it has stuff like refactoring in its context menus. The Package Explorer also shows Java classes and packages (as the name implies), while the Project Explorer shows folders and .java files.

Solution 3 - Eclipse

Some differences I see (in Juno) on a Java project:

  • In Project Explorer, context menu > New gives common Java artifacts, like Class, Interface, Enum, package... In Package Explorer, I see various kind of Projects, Web service, Folder, File, etc.
  • In Package Explorer, I can drag'n'drop a class file between two packages, it will automatically do the refactoring (move and change package, and imports in other classes). Project Explorer just won't allow me to do a drag'n'drop.
  • And as said, Project Explorer shows more information, eg. a Deployment Description, JavaScript resources, Deployed Resources, etc. whereas the Package Explorer is Java-centric.

That's why I keep the two tabs side-by-side. :-)

Solution 4 - Eclipse

My Project Explorer hides folders that belong to a source code management system while the Package Explorer shows e.g. the .git folder. Also, the Package Explorer offers more options that work with the source code, e.g. the refactoring stuff.

Solution 5 - Eclipse

One reason for preferring the Package Explorer is it is the only explorer that appears in the list when you select "Show In" on a file that is being edited or has been found in the Search view.

Solution 6 - Eclipse

One thing I just noticed is that, at least when developing Java Android apps, Projects will not show up in the Package Explorer if their project.properties file is borked or non-existent.

I had only been using the Package Explorer and had the Project Explorer hidden, and I was pulling my hair out trying to figure out why my imported project wouldn't show up. My console was saying the project had no .properties file but it was not visible for me to right click -> fix properties. Then I opened the Project explorer and it was there as it should be.

Solution 7 - Eclipse

  • Project Explorer - This is an instance of the CommonNavigator that is provided by the org.eclipse.ui.navigator.resources plugin. It provides a view of the workspace and has a large number of NCEs(Navigator Content Extensions ) contributed for resources, Java, C, Web Tools, Data Tools, PHP, etc. Source
  • Project Explorer additional nodes for web projects, enterprise projects, spring beans and web services.
  • Package Explorer - Provided by the Java Development Tools (JDT) UI project, this provides a view of Java classes for the workspace.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionEpagaView Question on Stackoverflow
Solution 1 - EclipseCsaba_HView Answer on Stackoverflow
Solution 2 - EclipsesleskeView Answer on Stackoverflow
Solution 3 - EclipsePhiLhoView Answer on Stackoverflow
Solution 4 - EclipseBombeView Answer on Stackoverflow
Solution 5 - EclipseSteve ChambersView Answer on Stackoverflow
Solution 6 - EclipsemmsengView Answer on Stackoverflow
Solution 7 - EclipsePremrajView Answer on Stackoverflow