This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 189341 - Difficulty finding UI to manage dependencies
Summary: Difficulty finding UI to manage dependencies
Status: RESOLVED WONTFIX
Alias: None
Product: projects
Classification: Unclassified
Component: Maven (show other bugs)
Version: 6.x
Hardware: All All
: P2 normal (vote)
Assignee: Milos Kleint
URL: http://xdesign-tools.czech.sun.com/us...
Keywords: UI
Depends on: 199852
Blocks: 189312
  Show dependency tree
 
Reported: 2010-08-10 09:14 UTC by Ondrej Langr
Modified: 2013-01-03 15:15 UTC (History)
2 users (show)

See Also:
Issue Type: ENHANCEMENT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ondrej Langr 2010-08-10 09:14:31 UTC
Usability study finding: 

Many participants had difficulties to find how to add a Maven dependency and where to manage them. 

The name of "Libraries" node generally did not indicate this is a place to manage dependencies.

Participants often searched for dependencies on project properties (transferring previous knowledge from Eclipse), some participants also on pom.xml contextual menu (transferring previous knowledge from IntelliJ idea).



Recommendations: 
----------------
Rename "Libraries" node to "Dependencies" for Maven projects. 

Add dependencies pane into project properties (consistent with libraries pane in Ant-managed projects).
Comment 1 Jesse Glick 2010-08-10 16:37:59 UTC
(In reply to comment #0)
> Rename "Libraries" node to "Dependencies" for Maven projects. 

de97dede8ae9
Comment 2 Jesse Glick 2010-08-13 14:36:02 UTC
Given that the name change was implemented, I don't think this is now so crucial.

Implementation may be tricky. Actions in the Projects logical view take effect immediately. But changes in a Properties dialog have to be queued up to be applied conditionally upon a click of the OK button, which is more complicated and more likely to be buggy. This is one reason I much prefer the GNOME convention of having nonmodal dialogs which apply changes immediately (and show only a Close button); you can always undo the occasional mistake using e.g. Local History if you need to.
Comment 3 John Jullion-ceccarelli 2010-08-16 08:49:00 UTC
Dunno. From the user's point of view I think that having this in Project Properties makes sense. Nonmodal properties window could be programmatic as unintended changes there could launch lengthy scanning. If there are bugs in the properties window then we should focus on fixing those.
Comment 4 John Jullion-ceccarelli 2010-10-06 07:11:34 UTC
Let's make a decision to either put the Dependencies panel into the Projects dialog or close this bug. Ondrej, what's your take?
Comment 5 Jesse Glick 2010-10-06 12:28:38 UTC
I think it makes sense to do. But it will take some work and I do not think this should be a higher priority for 6.10 than the numerous open bugs.
Comment 6 Ondrej Langr 2010-11-04 13:07:47 UTC
I agree with Jesse, it makes sense to do (people were really trying to find it there), not a priority, though.
Comment 7 Jesse Glick 2011-11-14 19:33:30 UTC
Do not really want this in the Properties dialog; clashes with bug #199852. (Unlike Ant-based projects, pom.xml for a Maven project is often edited by hand and considered part of project sources. A multiview editor is more natural for this.)

If people are still looking in Properties after that is implemented and cannot find the right location, can perhaps put some UI in Properties pointing them in the right direction.
Comment 8 Milos Kleint 2013-01-03 13:01:04 UTC
dependencies list in properties would have to look different from the list in the projects view. While projects view shows the effective list of deps including transitive one, the properties dialog would have to show just the non resolved list of direct dependencies. The major problem is that when adding/editing/removing dependencies it's non-trivial to determine how the dependency resolution tree has changed. We need maven to perform the resolution which is lengthy and requires a a saved changed pom file.

Even writing the edited dependency or removing the dependency from file is non-trivial as the link between raw, unresolved file and the resolved effective model is very fuzzy. Sometimes the task at hand is even impossible to achieve (eg. when the dependency is defined in parent pom).

With exception of some basic or well defined operations, most of the project metadata editing should happen in the pom file editor itself.
Comment 9 Jesse Glick 2013-01-03 15:15:52 UTC
I agree that the Properties dialog is a poor match. Since this is mostly about discoverability, perhaps consider the suggestion in comment #7 to gently redirect users searching in the Properties dialog.

What are the gestures to add dependencies today? Manual XML editing, Alt-INSERT in POM editor, right-click on Dependencies, DELETE on a dependency node, editor hint to resolve missing classname, anything else? Drag-and-drop of open Maven projects, dependency nodes from other projects, and artifact nodes would perhaps be useful.